9 Stimmen

Warum sollte ich MVVM in einer Silverlight-Anwendung verwenden?

Ich möchte wissen, warum wir MVVM verwenden sollten, um eine Silverlight-App zu implementieren. Was sind die Vorteile?

Wir machen keinen Unit Test für ViewModel, also möchte ich andere Gründe.

Im Folgenden stelle ich Fragen zu einigen Vorteilen, die die Leute gewöhnlich nennen:

1. lose gekoppelt: Wenn wir MVVM verwenden, eine Ansicht auf ViewModel, aber nicht eine Ansicht, warum es lose gekoppelt ist?

Wenn ich öffentliche Methoden in einem Code-Behind bereitstelle, können sie auch wiederverwendet werden.

1voto

Inga Punkte 482

Ohne MVVM wird der Code Ihrer Silverlight-Anwendung sehr schnell zu einem unüberschaubaren Chaos

0voto

Lex Lavnikov Punkte 1229

Was in MVVM ebenfalls interessant ist, ist die dynamische automatische Bindung.

Stellen Sie sich vor, Ihr Ansichtsmodell hat Eigenschaften wie diese: bool IsFirstNameVisible, bool IsFirstNameEnabled, string FirstName, double FirstNameWidth usw.

In Ihrer XAML-Datei definieren Sie TextBox mit x:Name = "FirstName" und rufen Ihren dynamischen MVVM-Binder auf. Es inspiziert Ihre View Model-Klasse über Reflection, schaut, welche Eigenschaften Sie definiert haben und bindet sie dynamisch an ähnliche Eigenschaften des Steuerelements mit demselben Namen, wobei bei Bedarf Wertkonverter angewendet werden.

In diesem Fall erhalten Sie sehr sauberes XAML, ohne kilometerlange Datenbindungsausdrücke und Konverter.

Das ist es, was meine MVVM-Bibliothek tut.

0voto

Chris Holmes Punkte 11104

Separation of Conerns Menschen. Trennung der Anliegen.

Vergessen Sie Unit-Tests (ich liebe sie, aber das ist hier nicht das Thema). Vergessen Sie die Wiederverwendbarkeit (verwenden Sie wirklich View-Modelle wieder? Nein, seien wir ehrlich).

Es geht um die Trennung von Belangen und darum, Code und Logik dort unterzubringen, wo sie hingehören. Der Grundgedanke ist die Wartbarkeit; die Möglichkeit, Änderungen am Code vorzunehmen, wenn er sich im Laufe der Zeit weiterentwickelt, ohne andere Dinge zu zerstören und ohne das Ganze in einen großen Haufen von Spaghetti zu verwandeln.

MVVM, richtig gemacht, ermöglicht es, Ihren Code in logische Teile zu zerlegen, die Sinn machen und ein einfaches Refactoring und Änderungen ermöglichen, wenn sich die Anforderungen der Anwendung ändern. Es ist einfacher zu finden wobei etwas ist, wenn Sie etwas ändern müssen. Versuchen Sie einmal, eine halbwegs komplexe Anwendung zu schreiben und sie dann einen Monat lang in Ruhe zu lassen, um dann darauf zurückzukommen und zu versuchen, wesentliche Änderungen vorzunehmen. Eine richtig strukturierte Anwendung mit vernünftigem Einsatz von MVVM ist nach einer Pause viel einfacher zu verstehen, und es ist viel einfacher, Änderungen vorzunehmen.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X