Designpatterns
MVC-Modell (Model-View-Controller)
Das MVC-Modell teilt eine Anwendung in Datenmodell, Benutzeroberfläche und Steuerung auf – für bessere Wartbarkeit und Struktur.
Was ist MVC?
MVC steht für:
- Model → Die Daten & Geschäftslogik
- View → Die Benutzeroberfläche (was der Benutzer sieht)
- Controller → Die Verbindungsstelle, die Eingaben verarbeitet und zwischen Model und View vermittelt
Ziel des MVC-Modells
Das MVC-Modell sorgt für eine klare Trennung von Verantwortlichkeiten:
Teil | Aufgabe |
---|---|
Model | Speichert Daten, enthält Logik, greift z. B. auf Datenbanken zu |
View | Zeigt dem Benutzer Informationen an (z. B. HTML, GUI) |
Controller | Reagiert auf Benutzereingaben und steuert, was passieren soll |
Ablauf (vereinfacht)
- Benutzer klickt auf etwas (z. B. Button)
- View meldet das an den Controller
- Controller reagiert und verändert das Model
- Das Model liefert neue Daten zurück
- Die View zeigt die neuen Daten an
Das Ganze passiert bei jeder Interaktion – und weil alles getrennt ist, bleibt dein Code übersichtlich und leicht wartbar.
Beispiel aus dem Alltag: Musik-App
Rolle | Entspricht im MVC | Beispiel |
---|---|---|
Du klickst „Play“ | View | Die App-Oberfläche zeigt den Play-Button |
Der Klick wird verarbeitet | Controller | Der Controller startet den Song |
Der Song & Infos | Model | Die Daten: Song-Titel, Länge, Datei usw. |
Anzeige des Songs | View | „Now Playing: Never Gonna Give You Up“ |
Vorteile von MVC
- Wartbarkeit
→ Du kannst z. B. das Design ändern, ohne die Logik anfassen zu müssen. - Erweiterbarkeit
→ Du kannst neue Funktionen einbauen, ohne alles umzuschreiben. - Teamarbeit wird einfacher
→ Designer, Entwickler & Datenbank-Profis können parallel arbeiten.
Schema
Benutzer → View → Controller → Model
↑ ↓
Antwort ← Ergebnis
MVC trennt: was gezeigt wird (View), was passiert (Controller) und was gespeichert wird (Model) – das macht dein Projekt sauber, verständlich und professionell.