Назад к вопросам
Junior — Middle
69
Какое назначение у компонента Router в вашем проекте?
Ответ от нейросети
sobes.tech 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)
}
}