Sobes.tech
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)
    }
}