Sobes.tech
Junior — Middle

Jak jsou informace získané z interaktora předávány prezentérovi?

sobes.tech AI

Odpověď od AI

V architektuře VIPER je interaktor zodpovědný za obchodní logiku a získávání dat, zatímco presenter je zodpovědný za přípravu dat pro zobrazení ve view.

Informace z interaktoru jsou obvykle předávány presenterovi prostřednictvím protokolu (rozhraní), který presenter implementuje. Interaktor volá metody tohoto protokolu a předává získaná data nebo výsledky operací. Tímto způsobem presenter obdrží data a aktualizuje stav rozhraní.

Příklad:

protocol InteractorOutput: AnyObject {
    func didFetchData(_ data: [String])
}

class Interactor {
    weak var output: InteractorOutput?

    func fetchData() {
        // Získání dat
        let data = ["item1", "item2"]
        output?.didFetchData(data)
    }
}

class Presenter: InteractorOutput {
    func didFetchData(_ data: [String]) {
        // Zpracování dat a aktualizace View
        print("Data received: \(data)")
    }
}

Tímto způsobem interaktor prostřednictvím delegáta (output) předává data presenterovi.