Consegues explicar os componentes principais do padrão arquitetónico Modelo-Visão-Controlador?
sobes.tech IA
Resposta da IA
O padrão arquitetónico Modelo-Visão-Controlador (MVC) divide a aplicação em três componentes principais:
-
Modelo: responsável pelos dados e lógica de negócio. O Modelo armazena o estado da aplicação e gere os dados, por exemplo, carregando-os de uma base de dados ou API.
-
Visão: responsável por mostrar os dados ao utilizador. A Visão recebe dados do Modelo e os apresenta, além de reagir à entrada do utilizador.
-
Controlador: atua como intermediário entre o Modelo e a Visão. Processa as ações do utilizador, atualiza o Modelo e modifica a Visão.
No iOS, por exemplo, UIViewController frequentemente desempenha o papel de controlador, gerindo a interação entre o Modelo e a Visão.
Exemplo:
class UserModel {
var name: String
init(name: String) {
self.name = name
}
}
class UserView {
func displayUserName(_ name: String) {
print("O nome do utilizador é: \(name)")
}
}
class UserController {
var model: UserModel
var view: UserView
init(model: UserModel, view: UserView) {
self.model = model
self.view = view
}
func updateUserName(to newName: String) {
model.name = newName
view.displayUserName(model.name)
}
}
Este padrão facilita a manutenção e expansão da aplicação.