WPF MVVM une vraie Application

WPF MVVM Real-Time Trading Application

J'ai beaucoup étudié le modèle MVVM, les différents frameworks proposés, ce que l'on peut faire avec Prims. Je suis souvent tombé sur des exemples d'applications en Silverlight avec Prims ou pas.

Je cherchais une "vraie" application WPF utilisant le modèle MVVM quand je suis arrivé sur ce projet :

WPF / MVVM Real-Time Trading Application
Sa documentation.

WPF Real Time
Ses codes sources dans le Codeplex

Requirements :
Visual Studio 2010
.NET Framework 4.0
Et ça fonctionne !
Aucune manipe de plus à faire pour exécuter le projet.

WPF MVVM Real-Time Trading Application est un projet brillant, l'auteur nous fait part de ses préoccupations de l'expression des besoins qui l'ont conduit à réaliser un tel développement. Alors comme tout est en anglais et bien je vais étudier ce projet et prendre ici quelques notes en français.

Spécifications

L'application doit répondre tout le temps, doit montrer en permanence les données très rapidement, ne doit jamais déraper ou se figer ne doit jamais planter ou s'exécuter en dehors de la mémoire.

C'est avec de telles spécifications que l'auteur Alexy Shelest va développer son produit.

Exigences ou besoins techniques

Application temps réel, la fiabilité, adaptabilité, l'extensibilité, l'évolutivité et la modularité (ce qui est la même chose, mais sonne mieux réunir dans une même phrase).

Prims

Effectivement les spécifications et les exigences techniques du projet font tout de suite penser à Prims et je lis avec intérêt les explications données par Alexy :

La modularité dans Prims est réalisée par le Bootstrapper qui s'occupe de charger les modules mais Alexy préfère largement la façon dont Marlon le réalise avec MEF dans le projet MeffedMVVM ...

Le découplage est réalisé par l'EventAggregator mais dans ce cas Alexy préfère le Mediator et le travail de Karl Shifflett tiré du travail de Marlon lui même tiré du travail de Josh Smith (et peut être pas dans cet ordre).

Dans Prims il y également le RegionAdpater et Unity qu'il ne va pas utiliser car en utilisant MEF pour instancier ses objets il ne veut pas créer de longue chaine de couplage comme peut le faire Unity. Il a l'idée que les ViewModels et les Services doivent être entièrement découplés et ne communiquer que par le Mediator quand ils s'enregistrent et diffusent des messages asynchrones.

Bref de Prims, il ne prend rien ! Nous sommes en Février 2012 et c'est justement à cette période que sort le Prims 4.1. Personnellement je trouve dommage de ne pas l'avoir utilisé d'autant que MEF est maintenant intégré dans Prism.

Pour aller plus loin


Aucun commentaire:

Publier un commentaire

Pour plus d'interactivité, n'hésitez pas à laisser votre commentaire.