Skip to content
IRC-Coding IRC-Coding
MVC MVP MVVM Datenbindung Testbarkeit

MVC vs MVP vs MVVM: Vergleich der GUI-Architekturmuster (inkl. Prüfungsfragen)

MVC, MVP und MVVM einfach erklärt: Rollen von Model/View/Controller/Presenter/ViewModel, Datenbindung, Vorteile/Nachteile und typische Prüfungsfragen.

S

schutzgeist

2 min read

MVC, MVP, MVVM – Vergleich von GUI-Architekturmuster

Dieser Beitrag ist eine Begriffserklärung zu MVC, MVP und MVVM – inklusive Prüfungsfragen, Kernelementen und Tags.

In a Nutshell

MVC, MVP und MVVM trennen Benutzeroberfläche, Logik und Datenmodell, um GUI-Anwendungen wartbarer und testbarer zu machen.

Kompakte Fachbeschreibung

  • MVC: Controller vermittelt zwischen View und Model.
  • MVP: Presenter koordiniert aktiv View und Model; View ist möglichst „dumm“.
  • MVVM: View bindet an ViewModel (Data Binding); UI-Updates sind deklarativer.

Prüfungsrelevante Stichpunkte

  • MVC: View sendet Eingaben an Controller, Controller ändert Model
  • MVP: Presenter kennt View und Model, View ist „dumm“
  • MVVM: Datenbindung zwischen View ↔ ViewModel
  • Einsatz je nach Framework (z.B. MVVM in WPF, MVC in Spring)
  • Praxis: Strukturierung, Testbarkeit
  • Security: Validierung im Controller/Presenter/ViewModel
  • Wirtschaftlichkeit: Wartbarkeit
  • Doku: Diagramme sinnvoll in GUI-Projekten

Kernkomponenten

  1. Model
  2. View
  3. Controller (MVC)
  4. Presenter (MVP)
  5. ViewModel (MVVM)
  6. Datenbindung
  7. Events/Callbacks
  8. Testbarkeit (Mocking)
  9. Validierung
  10. Entkopplung per Interfaces

Praxisbeispiel (Login)

MVC: View → Controller → Model → View
MVP: View → Presenter → Model → View
MVVM: View bindet Felder an ViewModel, Button triggert Command

Vorteile und Nachteile

Vorteile

  • Klare Trennung von Zuständigkeiten
  • Höhere Testbarkeit
  • Bessere Wartbarkeit
  • Parallele Entwicklung möglich

Nachteile

  • Overhead bei kleinen Projekten
  • Datenbindung kann Debugging erschweren (MVVM)

Typische Prüfungsfragen (mit Kurzantwort)

  1. Ziel von MVC/MVP/MVVM? Trennung von View/Model/Steuerung.
  2. Hauptunterschiede? Controller vs Presenter vs ViewModel + Binding.
  3. Wo ist MVVM typisch? WPF/.NET, Frameworks mit Binding.
  4. Vorteil MVP gegenüber MVC? Bessere Testbarkeit durch Presenter + Interface.

Glossar

BegriffDefinition
MVCModel-View-Controller
MVPModel-View-Presenter
MVVMModel-View-ViewModel

Freie Antwort

In IHK-Projekten mit GUI solltest du eines der Muster wählen und sauber dokumentieren (z.B. Diagramm der Datenflüsse). In CLI-Tools ist der Overhead meist unnötig.

Lernstrategie

  1. Tabelle (MVC/MVP/MVVM) erstellen.
  2. Mini-App in mindestens einem Muster implementieren.
  3. Unterschiede stichpunktartig üben.
  4. Keine Geschäftslogik in UI-Komponenten.

Themenanalyse

  • Kern: UI-Strukturierung
  • Herausforderungen: Binding/Strukturkonflikte
  • Sicherheit: Validierung
  • Doku: Interaktionsdiagramme
  • Wirtschaftlichkeit: Wartbarkeit

Weiterführende Infos

  1. https://learn.microsoft.com/en-us/dotnet/architecture/mvvm/
  2. https://spring.io/guides/gs/serving-web-content/
Zurück zum Blog
Share:

Ähnliche Beiträge