La présentation est en train de télécharger. S'il vous plaît, attendez

La présentation est en train de télécharger. S'il vous plaît, attendez

22 Model-View-ViewModel et testabilité pour WPF/Silverlight Richard Clark Clark Ingénierie Informatique Simon Ferquel Access It.

Présentations similaires


Présentation au sujet: "22 Model-View-ViewModel et testabilité pour WPF/Silverlight Richard Clark Clark Ingénierie Informatique Simon Ferquel Access It."— Transcription de la présentation:

1

2 22 Model-View-ViewModel et testabilité pour WPF/Silverlight Richard Clark Clark Ingénierie Informatique Simon Ferquel Access It

3 33 Clark Ingénierie Informatique http://www.c2i.fr Livres chez Microsoft Press Expert CodeFluent 2001-2009 RIP! Expertise.NET

4 44 Access It en quelques mots… Consulting/expertise, réalisation (projet /assistance technique) et formation (CPLS) sur les technologies Microsoft Haut niveau de certification 2 agences à Lille et Paris, couverture nationale Centre des Usages pour la région Nord 3 grands domaines dexpertise technologique Plateforme applicative : SharePoint, SQL Server & BI, BizTalk.Net : architecture, Framework & langages, RIA/RDA (Silverlight, WPF, Surface), industrialisation/ALM (TFS/VSTS)… Infrastructure : poste de travail, serveurs, virtualisation, messagerie, annuaire… http://www.access-it.fr

5 55 M-V-VM : LA STAR ! Cinch MVVM Light Toolkit MVVM Helpers MVVM Foundation Caliburn Onyx Calcium nRoute Basic MVVM Framework GoodLight Ocean Nito MVVM… Prism ?

6 66 M-V-VM : Principes de base View ViewModel Model XAMLClasse Databinding Business Objects

7 77 M-V-VM Démo Mise en place

8 88 Testabilité - Pourquoi Testabilité réparatrice Reproduire tout bug de manière automatisée Isoler le composant fautif et à détecter précisément la cause de l ' erreur Assurer la non-régression pour la suite du projet Test Driven Development Assurer la robustesse des composants dès le départ Détecter très tôt la plupart des bugs Assurer la facilité d 'utilisation des composants

9 99 M-V-VM Démo

10 10 M-V-VM Démo Relay Command

11 11 Testabilité – Comment ? (1) Isolation : Etre capable de remplacer toutes les dépendances Paramètres de constructeur Injection de propriétés Appeler une fonctionnalité Valider l'état après appel Valider les communications avec les dépendances

12 12 Testabilité – Comment ? (2) IoC / Injection de dépendances Beaucoup d'implémentations (Unity, Castle / Windsor, Spring.Net, StructureMap…) Implémentation Microsoft : Unity

13 13 DI : Configuration Container.RegisterType<SocietesViewModelBase, SocietesViewModel>(); Container.RegisterType<ISocieteDAL, SocieteDAL>(new ContainerControlledLifetimeManager()); Ou fichier de configuration

14 14 Utilisation Appel au container public class SocietesViewModel : SocietesViewModelBase { public SocieteViewModel(ISocieteDAL dal){} } … var vm = Container.Resolve ();

15 15 M-V-VM Démo

16 16 M-V-VM Démo ViewModel « complexe » Méthodes asynchrones

17 17 Tester du code asynchrone Mocker un service asynchrone Comprendre le fonctionnement Begin/End Dispatcher Comprendre le principe de pompe à messages Le test doit déclencher la pompe… Mais ne doit pas la bloquer… Attention, il va y avoir des Threads ! Pour Silverlight : C'est beaucoup plus simple !

18 18 M-V-VM Démo

19 19 M-V-VM Questions ?


Télécharger ppt "22 Model-View-ViewModel et testabilité pour WPF/Silverlight Richard Clark Clark Ingénierie Informatique Simon Ferquel Access It."

Présentations similaires


Annonces Google