Junior — Middle
Aký je účel komponentu Router vo vašom projekte?
sobes.tech AI
Odpoveď od AI
Komponent Router v iOS aplikácii je zodpovedný za navigáciu medzi obrazovkami a modulmi. Zapúzdruje logiku prechodu, vytvára a odovzdáva potrebné ViewControllery a tiež riadi prenos dát medzi nimi.
Toto umožňuje:
- Oddeliť zodpovednosti, oddelením navigácie od obchodnej logiky a UI.
- Zjednodušiť testovanie a údržbu kódu.
- Centralizovať routovanie, čím sú prechody predvídateľnejšie a lepšie riadené.
Príklad použitia Routera:
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)
}
}