Architekturen betrieblicher Anwendungssysteme

09 Klassische Softwaremuster


Question

Dokumentation des MVC-Architekturmuster


Answer
  • Kontext/Beschreibung: Interaktive Anwendungen mit einer flexiblen Mensch-Computer-Schnittstelle
  • Problem: Wechselnde Benutzungsschnittstellen, Funktionserweiterungen, Änderungen "look and feel"
  • Kräfte/Forces: Verschiedene Anzeigeformen für die selben Daten, Direkte Verarbeitung von Eingaben, Schnelles Ändern der Benutzerschnittstelle zur Laufzeit
  • Lösung: Aufteilung in MVC, Model kapselt die Kerndaten und -funktionalität, ist unabhängig vom Output, dem Input und der Repräsentation, View stellt dem Nutzer die Informationen zur Verfügung; holt sich die Daten vom Model, ein Model kann mehrere Views haben, Controller empfängt Input, i.d.R. eventgetrieben, Verändert der Benutzer das Model über einen Controller, zeigen alle Views die Änderungen unmittelbar an
  • Konsequenzen: Vorteile: Verschiedene Views/Selbes Modell, Synchronisierte Views, Neue Views hinzufügen ist einfach; Nachteile: Komplexität, Updateneigung, Abhängigkeit zwischen Controller und View



Comments