DevPrep

Все темы › SwiftUI

Как работает управление состоянием и single source of truth?

Middle PRO

Принцип

У каждого факта в приложении должно быть одно место хранения, а всё остальное — производные от него. UI в SwiftUI — чистая функция состояния: view = f(state). Поток данных однонаправленный: состояние → body → экран; действия пользователя мутируют состояние, и фреймворк сам пересчитывает зависимые view. Дублирование состояния (копия массива в дочерней view, «кэш» флага в двух местах) ведёт к рассинхрону и багам, которые проявляются только при определённой последовательности действий.

Продолжение ответа с кодом и уточняющими вопросами интервьюера — в приложении DevPrep.

Полный ответ — в DevPrep

Потренируйтесь перед собеседованием

В DevPrep эти ответы превращаются в задачи на минуту: что напечатает код, найди баг, пробное собеседование. По задаче в день.

Скачать DevPrep в App Store