NavigationStack: как устроены path, navigationDestination и диплинки?
Суть
NavigationStack (iOS 16) отделяет данные навигации от view. Стек — это коллекция значений (path), а navigationDestination(for:) описывает, какую view построить для значения данного типа. NavigationLink(value:) просто добавляет значение в path. Раз навигация — это данные, ею управляют программно: push — append, pop — removeLast, возврат к корню — очистка, диплинк — присваивание нового path целиком.
Продолжение ответа с кодом и уточняющими вопросами интервьюера — в приложении DevPrep.
Полный ответ — в DevPrep