27

2 Silverlight et WPF en entreprise Mardi 8 Février 2011 Luc Vo Van Consultant.NET/UX Microsoft France Thomas Lebrun Consultant Access IT IdF

Embed Size (px)

Citation preview

Page 1: 2 Silverlight et WPF en entreprise Mardi 8 Février 2011 Luc Vo Van Consultant.NET/UX Microsoft France Thomas Lebrun Consultant Access IT IdF
Page 2: 2 Silverlight et WPF en entreprise Mardi 8 Février 2011 Luc Vo Van Consultant.NET/UX Microsoft France Thomas Lebrun Consultant Access IT IdF

2

Silverlight et WPF en entreprise

Mardi 8 Février 2011

Luc Vo VanConsultant .NET/UXMicrosoft France

Thomas Lebrun

ConsultantAccess IT IdF

Page 3: 2 Silverlight et WPF en entreprise Mardi 8 Février 2011 Luc Vo Van Consultant.NET/UX Microsoft France Thomas Lebrun Consultant Access IT IdF

3

Silverlight et WPF en entreprise

Retours d’expériences, bonnes pratiques, et techniques avancées pour le développement de clients

riches

Page 4: 2 Silverlight et WPF en entreprise Mardi 8 Février 2011 Luc Vo Van Consultant.NET/UX Microsoft France Thomas Lebrun Consultant Access IT IdF

444

Microsoft Services:Un accompagnement global de nos clients

Architecture & PlanningPlanification

Conseil et ProjetsDéploiement et adoption

SupportOptimisation et Opération

Evaluation

Planification

Développement

Déploiement

Stabilisation

Opérations

Support

Support Premier

Enterprise StrategyConsulting Services

Division Services France 2010

• 180 Consultants• 125 Technical Account Managers • 190 Ingénieurs Support• 17 Responsables de Mission• 41 Partenaires référencés

www.microsoft.fr/services

Division Services Monde 2010

• 82 pays couverts• 18 000 employés• 35 000 partenaires• 44 langues parlées par nos ingénieurs

Page 5: 2 Silverlight et WPF en entreprise Mardi 8 Février 2011 Luc Vo Van Consultant.NET/UX Microsoft France Thomas Lebrun Consultant Access IT IdF

555

Criticité du projet

Maturité de la technologie

Partenaires

Notre engagement auprès de nos partenaires est : • De leur assurer un transfert d’expertise,• De leur apporter notre support sur les

dernières technologies, • De leur donner accès aux meilleures

pratiques de mise en œuvre et de support.

Nos clients et partenaires sont particulièrement satisfaits par…

• Le niveau d’engagement des consultants : 94%• La gestion de l’équipe de projet : 92%• Les compétences techniques des consultants : 91%• La relation avec les équipes du client : 90%

Notre positionnement est d’intervenir sur les projets critiques et les technologies récentes

Page 6: 2 Silverlight et WPF en entreprise Mardi 8 Février 2011 Luc Vo Van Consultant.NET/UX Microsoft France Thomas Lebrun Consultant Access IT IdF

6

Access It IdF en quelques mots…• Société de services, conseil/expertise, et formation,

exclusivement sur les technologies Microsoft• 20+ collaborateurs spécialisés sur les techno MS, dont 11

MVP

• Interventions en mode : Conseil, expertise, coaching et formation Réalisation, au forfait ou en Assistance Technique

.NET Plateforme Applicative

Framework et langages .Net, AZURE, Silverlight, WPF/Surface, VS/TFS, Windows Phone 7,…

SQL Server (SSIS, SQL, SSAS, SSRS), PowerPivot, SharePoint & on-line, Office 365,…

.NET Collab.

BI

Page 7: 2 Silverlight et WPF en entreprise Mardi 8 Février 2011 Luc Vo Van Consultant.NET/UX Microsoft France Thomas Lebrun Consultant Access IT IdF

7

Agenda

Besoins et architecture type

Les principes fondamentaux

Approches et patterns

Expression Blend SDK

Testing

Page 8: 2 Silverlight et WPF en entreprise Mardi 8 Février 2011 Luc Vo Van Consultant.NET/UX Microsoft France Thomas Lebrun Consultant Access IT IdF

8

Shell

Architecture type

DBORM

Views ViewModels Models

Shell Services(Messaging,

Logging, etc.)

WCF / RIA Services

Page 9: 2 Silverlight et WPF en entreprise Mardi 8 Février 2011 Luc Vo Van Consultant.NET/UX Microsoft France Thomas Lebrun Consultant Access IT IdF

9

Principes Fondamentaux

CompositionModularité

Parrallélisation des développementsFournit des unités fonctionnelles / de déploiement

Généralement deux approchesRégion + servicesServices

Shell

Module A

Module B

Module C

Page 10: 2 Silverlight et WPF en entreprise Mardi 8 Février 2011 Luc Vo Van Consultant.NET/UX Microsoft France Thomas Lebrun Consultant Access IT IdF

10

Principes Fondamentaux

Inversion of ControlDécouplage interface / implémentation

Facilite la substitution de composants et les tests

Diverses implémentations Unity, Spring.NET, Ninject… Consommateur

de IImpl

Impl1:IImpl

Page 11: 2 Silverlight et WPF en entreprise Mardi 8 Février 2011 Luc Vo Van Consultant.NET/UX Microsoft France Thomas Lebrun Consultant Access IT IdF

11

Principes Fondamentaux

Inversion of ControlDécouplage interface / implémentation

Facilite la substitution de composants et les tests

Diverses implémentations Unity, Spring.NET, Ninject… Consommateur

de IImpl

Impl1:IImpl Impl2:IImpl

Page 12: 2 Silverlight et WPF en entreprise Mardi 8 Février 2011 Luc Vo Van Consultant.NET/UX Microsoft France Thomas Lebrun Consultant Access IT IdF

12

Principes Fondamentaux

Commanding

Exécution d’une action

Pas de couplage fort entre la source et l’actionPlusieurs sources possibles pour une actionPeu ou pas d’adhérence à l’interface graphique

Mise à jour automatique de l’IHM

Page 13: 2 Silverlight et WPF en entreprise Mardi 8 Février 2011 Luc Vo Van Consultant.NET/UX Microsoft France Thomas Lebrun Consultant Access IT IdF

13

DémoUtilisation des commandes

Page 14: 2 Silverlight et WPF en entreprise Mardi 8 Février 2011 Luc Vo Van Consultant.NET/UX Microsoft France Thomas Lebrun Consultant Access IT IdF

14

Principes FondamentauxMessaging

Communication inter-viewmodels

ImplémentationsEventAggregator (PRISM)MessengerDans les cas simples une Queue peut suffire !

Implémenté dans la plupart des frameworks MVVM

Source

abonné 1

abonné 2

abonné 3

MESSENGER

Page 15: 2 Silverlight et WPF en entreprise Mardi 8 Février 2011 Luc Vo Van Consultant.NET/UX Microsoft France Thomas Lebrun Consultant Access IT IdF

15

Principes Fondamentaux

Services du shellPermet de aux composants de communiquer (vues, viewmodels, controles…) avec l’hôte

Exemples de services transversesPopupsRibbonLoggingWorkspaces…

Shel

l

ViewModels

Shell Services

Page 16: 2 Silverlight et WPF en entreprise Mardi 8 Février 2011 Luc Vo Van Consultant.NET/UX Microsoft France Thomas Lebrun Consultant Access IT IdF

16

DémoImplémentation d’un service de popup

Page 17: 2 Silverlight et WPF en entreprise Mardi 8 Février 2011 Luc Vo Van Consultant.NET/UX Microsoft France Thomas Lebrun Consultant Access IT IdF

17

Approches et patterns

ViewModelFirstLes viewmodels organisent le fluxLes viewmodels créent les vuesS’implémente facilement en WPF par l’utilisation de DataTemplate

ViewFirstLes vues organisent le fluxLes vues contiennent leurs viewmodelsPlus facilement blendables

Page 18: 2 Silverlight et WPF en entreprise Mardi 8 Février 2011 Luc Vo Van Consultant.NET/UX Microsoft France Thomas Lebrun Consultant Access IT IdF

18

Approches et patterns

ViewStatesPermet de définir des états visuels avec transitions

Souvent utilisés pour les formulaires(modes Read, Edit)

Facilement liable au ViewModels avec le DataStateBehavior

Attention à la taille du XAML à parser !

Page 19: 2 Silverlight et WPF en entreprise Mardi 8 Février 2011 Luc Vo Van Consultant.NET/UX Microsoft France Thomas Lebrun Consultant Access IT IdF

19

DémoFormulaires avec view states

Page 20: 2 Silverlight et WPF en entreprise Mardi 8 Février 2011 Luc Vo Van Consultant.NET/UX Microsoft France Thomas Lebrun Consultant Access IT IdF

20

Expression Blend SDK

Ensemble de behaviors facilitant l’interactivité

Enrichit la palette d’outils du designer interactifAméliore la séparation IHM / code

Principe 1 : Priorité à la composition plutôt que l’héritage

Principe 2 : un trigger déclenche une action

Page 21: 2 Silverlight et WPF en entreprise Mardi 8 Février 2011 Luc Vo Van Consultant.NET/UX Microsoft France Thomas Lebrun Consultant Access IT IdF

21

DémoAttached property

Page 22: 2 Silverlight et WPF en entreprise Mardi 8 Février 2011 Luc Vo Van Consultant.NET/UX Microsoft France Thomas Lebrun Consultant Access IT IdF

22

Expression Blend SDK

InvokeCommandActionLie un évènement à une commande

DataStateBehaviorsSélection d’un VisualState en fonction d’une propriété

CallMethodActionLie un évènement à une méthode

Il est facile d’écrire ses propres extensions !

Page 23: 2 Silverlight et WPF en entreprise Mardi 8 Février 2011 Luc Vo Van Consultant.NET/UX Microsoft France Thomas Lebrun Consultant Access IT IdF

23

DémoCréation et Utilisation d’un Behavior Custom

Page 24: 2 Silverlight et WPF en entreprise Mardi 8 Février 2011 Luc Vo Van Consultant.NET/UX Microsoft France Thomas Lebrun Consultant Access IT IdF

24

Testing

L’IoC permet l’écriture de mocks Simulation de situationsEcriture au fil de l’eau de cas de tests

WPFViewModels : unit testing standard dans VSViews : UI automationTesting intégré à Visual Studio / Test Manager

Page 25: 2 Silverlight et WPF en entreprise Mardi 8 Février 2011 Luc Vo Van Consultant.NET/UX Microsoft France Thomas Lebrun Consultant Access IT IdF

25

Testing

Silverlight ViewModels

StatLight, Odin…Projet .NET « desktop »

Silverlight Unit Test FrameworkTests d’UI à venir

Page 26: 2 Silverlight et WPF en entreprise Mardi 8 Février 2011 Luc Vo Van Consultant.NET/UX Microsoft France Thomas Lebrun Consultant Access IT IdF

26

Des questions ?

Blog de Luc Vo Van

http://blogs.msdn.com/luc

Blog de Thomas Lebrun

http://blogs.codes-sources.com/tom/

Page 27: 2 Silverlight et WPF en entreprise Mardi 8 Février 2011 Luc Vo Van Consultant.NET/UX Microsoft France Thomas Lebrun Consultant Access IT IdF

27

MSDN et TechNet : l’essentiel des ressources techniques à portée de clic

http://technet.com http://msdn.com

Portail administration et infrastructure pour informaticiens

Portail de ressources technique pour développeurs