Junior — Middle
რა მიზანს ემსახურება თქვენი პროექტის Router კომპონენტი?
sobes.tech AI
პასუხი AI-სგან
iOS აპლიკაციაში Router კომპონენტი პასუხისმგებელია ეკრანებსა და მოდულებს შორის ნავიგაციისთვის. იგი კაპსულირებს გადასვლის ლოგიკას, ქმნის და გადასცემს საჭირო 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)
}
}