Junior — Middle
Какво е предназначението на компонента Router във вашия проект?
sobes.tech AI
Отговор от AI
Компонентът Router в iOS приложение отговаря за навигацията между екрани и модули. Той капсулира логиката на преходите, създава и предава необходимите ViewController-и, както и управлява прехвърлянето на данни между тях.
Това позволява:
- Разделяне на отговорностите, отделяйки навигацията от бизнес логиката и UI.
- Улесняване на тестването и поддръжката на кода.
- Централизиране на маршрутизирането, правейки преходите по-предсказуеми и управляеми.
Пример за използване на Router:
protocol Router {
func navigateToDetail(with id: Int)
}
class AppRouter: Router {
let navigationController: UINavigationController
init(navigationController: UINavigationController) {
self.navigationController = navigationController
}
func navigateToDetail(with id: Int) {
let detailVC = DetailViewController(id: id)
navigationController.pushViewController(detailVC, animated: true)
}
}