mk-prg-net \se \ patterns \gui

MV- Pattern

Typisch für für den Einstieg in viele GUI- Baukästen wie Windows Forms, WPF oder ASP.NET Webforms ist die Gestaltung einer kleinen grafischen Benutzeroberfläche (Dialog), und anschließend die Implementierung der Geschäftslogik in den Event- Handlern der Steuerelemente der GUI (z.B. button_click(...)).
Die View (= grafische Oberfläche) wird hierbei dierekt an das Model durch Berechnungen in den Event- Handlern gebunden. Das Muster wird als MV-Pattern bezeichnet.

MVP- Muster

MVP-Muster allgemein, Beispielimplementierung für Login- View

Das MV- Muster ist für größere Projekte ungenügend: Große Teile der Geschäftslogik, die insbesondere Workflows beschreiben, müssen in den Eventhandlern der View implementiert werden. Dieser Teil der Geschäftslogik kann damit kaum getestet werden.

Abhilfe schafft das MVP Muster (= Model View Presenter). Der Presenter wird gegen die Schnittstellen des Models und der View programmiert: class Presenter{ Pesenter(IView view, IModel model){...}}. Die Workflows aus den Eventhandlern werden in Methoden des Presenters ausgelagert, wie folgendes Bild zeigt

→ Besispielanwendung "SucheSmileys" in Projektmappe ASP_NET.Basics

MVVM- Muster

Eine Weitere Möglichkeit, Teile der Geschäftslogik aus dem den Eventhandlern des Page- Controllers einer Webform zu "verbannen", bietet das Architekturmuster MVVM (=Model View ViewModel).

→ Beispielanwendung "_06_Datenbindung\Modelbindung.aspx" in der Projektmappe ASP_NET.Basics

MVC- Muster