Sobes.tech
Junior — Middle

Kāda ir Router komponenta jūsu projektā?

sobes.tech AI

Atbilde no AI

iOS lietotnē Router komponenta ir atbildīga par navigāciju starp ekrāniem un moduļiem. Tā ietver pārejas loģiku, izveido un nodod nepieciešamos ViewControllerus, kā arī pārvalda datu pārraidīšanu starp tiem.

Tas ļauj:

  • Atdalīt atbildību, nodalot navigāciju no biznesa loģikas un UI.
  • Vienkāršot koda testēšanu un uzturēšanu.
  • Centralizēt maršrutēšanu, padarot pārejas prognozējamākas un pārvaldāmākas.

Router izmantošanas piemērs:

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)
    }
}