Sobes.tech
Junior — Middle

Kannst du die Hauptkomponenten des Architektur-Patterns Model-View-Controller erklären?

sobes.tech KI

Antwort von AI

Das architektonische Muster Model-View-Controller (MVC) teilt die Anwendung in drei Hauptkomponenten:

  • Model (Modell): Verantwortlich für Daten und Geschäftslogik. Das Modell speichert den Zustand der Anwendung und verwaltet die Daten, z.B. durch Laden aus einer Datenbank oder API.

  • View (Ansicht): Verantwortlich für die Darstellung der Daten für den Benutzer. Die Ansicht erhält Daten vom Modell und zeigt sie an, reagiert aber auch auf Benutzereingaben.

  • Controller (Steuerung): Dient als Vermittler zwischen Model und View. Es verarbeitet Benutzeraktionen, aktualisiert das Modell und ändert die Ansicht.

In iOS spielt beispielsweise UIViewController oft die Rolle des Controllers, der die Interaktion zwischen Modell und Ansicht steuert.

Beispiel:

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

class UserView {
    func displayUserName(_ name: String) {
        print("Benutzername ist: \(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)
    }
}

Eine solche Trennung erleichtert die Wartung und Erweiterung der Anwendung.