Junior — Middle
Wie erfolgt der Informationsaustausch zwischen Modell, Ansicht und Controller in der MVC-Architektur?
sobes.tech KI
Antwort von AI
In der MVC-Architektur (Model-View-Controller) erfolgt eine Verantwortlichkeitsaufteilung zwischen drei Komponenten:
- Model (Modell) — verantwortlich für Daten und Geschäftslogik.
- View (Ansicht) — verantwortlich für die Darstellung der Daten für den Benutzer.
- Controller (Steuerung) — verarbeitet die Benutzereingaben und interagiert mit Modell und Ansicht.
Der Informationsaustausch erfolgt wie folgt:
- Der Benutzer interagiert mit der View (z.B. durch Drücken eines Buttons).
- Die View sendet das Ereignis an den Controller.
- Der Controller verarbeitet das Ereignis, ändert ggf. die Daten im Model.
- Das Model aktualisiert seinen Zustand.
- Das Model benachrichtigt die View über Änderungen (z.B. durch das Beobachter-Muster oder direkten Aufruf).
- Die View aktualisiert die Anzeige basierend auf den neuen Daten des Model.
Beispiel in PHP (vereinfachte Version):
// Controller
class UserController {
private $model;
private $view;
public function __construct($model, $view) {
$this->model = $model;
$this->view = $view;
}
public function updateUserName($name) {
$this->model->setName($name);
$this->view->render($this->model->getData());
}
}
Auf diese Weise fungiert der Controller als Vermittler zwischen Modell und Ansicht und sorgt für den Daten- und Ereignisfluss.