Sobes.tech
Junior — Middle

Pouvez-vous expliquer les composants principaux du modèle architectural Modèle-Vue-Contrôleur?

sobes.tech IA

Réponse de l'IA

Le modèle architectural Modèle-Vue-Contrôleur (MVC) divise l'application en trois composants principaux:

  • Modèle : responsable des données et de la logique métier. Le modèle stocke l'état de l'application et gère les données, par exemple en les chargeant depuis une base de données ou une API.

  • Vue : responsable de l'affichage des données à l'utilisateur. La vue reçoit les données du modèle et les affiche, tout en réagissant à l'entrée de l'utilisateur.

  • Contrôleur : sert d'intermédiaire entre le Modèle et la Vue. Il traite les actions de l'utilisateur, met à jour le modèle et modifie la vue.

Dans iOS, par exemple, UIViewController joue souvent le rôle de contrôleur, gérant l'interaction entre le modèle et la vue.

Exemple:

class UserModel {
    var name: String
    init(name: String) {
        self.name = name
    }
}

class UserView {
    func displayUserName(_ name: String) {
        print("Le nom de l'utilisateur est : \(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)
    }
}

Une telle séparation facilite la maintenance et l'extension de l'application.