DevPrep

Все темы › Архитектура программного обеспечения

Coordinator — зачем нужен и как реализовать?

Middle PRO

Суть

Coordinator выносит навигацию из экранов. Контроллер не знает, какой экран следующий и как его создать: он сообщает о событии (onLoggedIn, делегат), а координатор решает, что показать, создаёт экран и его зависимости. Экраны становятся переиспользуемыми (один и тот же LoginViewController в онбординге и в настройках), флоу — явными и тестируемыми, а UIViewController перестаёт заниматься pushViewController и сборкой зависимостей.

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

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

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

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

Скачать DevPrep в App Store