Junior — Middle
Como é que a informação obtida do interactuador é transmitida ao apresentador?
sobes.tech IA
Resposta da IA
Na arquitetura VIPER, o interactor é responsável pela lógica de negócio e obtenção de dados, enquanto que o presenter é responsável por preparar os dados para exibição na view.
A informação do interactor é normalmente transmitida ao presenter através de um protocolo (interface) que o presenter implementa. O interactor chama os métodos deste protocolo, passando os dados obtidos ou os resultados das operações. Assim, o presenter recebe os dados e atualiza o estado da interface.
Exemplo:
protocol InteractorOutput: AnyObject {
func didFetchData(_ data: [String])
}
class Interactor {
weak var output: InteractorOutput?
func fetchData() {
// Obter dados
let data = ["item1", "item2"]
output?.didFetchData(data)
}
}
class Presenter: InteractorOutput {
func didFetchData(_ data: [String]) {
// Processar dados e atualizar a View
print("Dados recebidos: \(data)")
}
}
Dessa forma, o interactor transmite os dados ao presenter através do delegado (output).