Es folgt die Ausscheidung aus Dieser Artikel zu MVVM. Kann jemand ein Beispiel dafür geben, wie diese anderen Muster (Befehl, DI) in WPF verwendet werden? Gibt es noch andere Desgin-Muster, die in WPF verwendet werden und die hier nicht aufgeführt sind?
Es gibt andere Muster, die Sie beachten sollten, um Sie bei MVVM zu unterstützen. Muster wie Commanding (in WPF, Lösungen für SL), Mediator und keap Dependency Injection. .
Die Datenbindung (zwischen View und ViewModel) verwendet das Observer-Muster. Außerdem: Das Factory-Muster kann verwendet werden, um das ViewModel zu instanziieren, aber das ist optional.
Ich habe den Artikel über einige von ihnen geschrieben: WPF und Silverlight Entwurfsmuster
Hier ist eine kurze Beschreibung der Muster:
1) MVVM - verwendet als Modellkonverter und als Ersatz für den Code-Behind. Verbessert die Testbarkeit, es ist viel einfacher, Komponententests für ViewModel zu schreiben.
2) Dependency Injection - dient zur Verbesserung der Testbarkeit einer Klasse (Sie können Komponententests für eine bestimmte Klasse getrennt von anderen schreiben) und für die Möglichkeit, die Implementierung einfacher zu ändern (Logger ändern) , Cache-Provider, Web-Service usw.)
3) Befehl - kann standardmäßig auf Button- und MenuItem-Steuerelemente angewendet werden, deaktiviert Steuerelemente, wenn eine Aktion nicht ausgeführt werden kann. Wird auch im MVVM-Muster als Ersatz für Code-Behind-Ereignisse verwendet.
Andere Muster aus dem klassischen Buch, die bereits in WPF verwendet werden:
Tags und Links wpf design-patterns