Junior — Middle
Pentru cine este destinată rolul Router în arhitectura MVVM?
sobes.tech AI
Răspuns de la AI
În arhitectura MVVM, rolul Router-ului nu este de obicei direct legat de Model, View sau ViewModel. Router-ul este responsabil pentru navigarea între ecranele aplicației, adică pentru tranziții și rutare. În aplicațiile iOS, Router-ul este adesea implementat ca un component separat, care gestionează tranzițiile între ViewController-uri, este apelat din ViewModel sau Coordinator și ajută la separarea logicii de navigare de logica de business și de prezentare.
Exemplu: ViewModel-ul informează Router-ul că trebuie să treacă la ecranul următor, iar Router-ul efectuează tranziția.
protocol Router {
func navigateToDetail()
}
class AppRouter: Router {
weak var navigationController: UINavigationController?
func navigateToDetail() {
let detailVC = DetailViewController()
navigationController?.pushViewController(detailVC, animated: true)
}
}