ReactiveUI, View/ViewModel-Injektion und DI im Allgemeinen

In letzter Zeit habe ich versucht, um mich in das neue Zeitalter der UI-Entwicklung und vor ReactiveUI. Ich Liebe das deklarative Natur.

Wollte ich komplett wechseln, also habe ich versucht zu verstehen, wie Dinge gemacht in diese neue Welt der ReactiveUI. Ich wähle ReactiveUI, weil ich gesehen habe, die verwaltet wird von einem sehr klugen Mann (Paul C. Betts).

Ich bin sehr neu, um es, und ich werde wahrscheinlich überschwemmungen StackOverflow Fragen darüber, weil ich eine große Kraft und ich denke, es verdient zu lernen, und gemastert.

Lassen Sie uns in die details:

Habe ich immer benutzt, Sicht-Ersten. Ich bin ein veteran Benutzer die Cinch-Framework (http://cinch.codeplex.com/)

Es nutzt MEF einschleusen des ViewModels zu jeder Ansicht. Sie müssen nur schmücken Sie Ihr ViewModel mit [ViewModel("SampleView")] und fügen Sie eine Angefügte Eigenschaft, um Ihre Ansicht (ViewModelLocator.ViewModel="SampleView"), und wenn die Ansicht Geladen wird, das entsprechende ViewModel instanziert ist und injiziert werden, da seine DataContext mit dem Lebenszyklus, die Sie wählen.

Dieser Mechanismus, es ist zwar gültig, hat einige Nachteile. Das Schlimmste: Es verwendet einen Locator.

Als Mark Seemann schlage vor, in seinem Buch, ServiceLocator ist ein anti-pattern, die vermieden werden sollten.

  1. Also meine erste Frage ist: ist ReactiveUI gebaut auf der Spitze eines
    Locator-basierte Infrastruktur?
  2. Anzeigen-Erste oder ViewModel-Ersten? Was ist besser in Bezug auf gute Praktiken, Entkopplung, stabiles und Sachen wie diese, die Anliegen der eine verrückte, pro-Microsoft Clean-Code-Liebhaber wie mich? Die machen mich besser schlafen und meine Anwendung mit all den *führten Güte?
InformationsquelleAutor SuperJMN | 2014-11-12
Schreibe einen Kommentar