palais descongrèsParis7, 8 et 9février 2012
Améliorez votreproductivité XAML en           07/02/2012entrepriseLuc VO VAN          Thomas LEBRUNConsultant Dev/UX   Con...
Luc Vo Van  Consultant chez Microsoft Consulting Services  Spécialités   .NET   XAML (Silverlight, WPF, Windows Phone, S...
Microsoft ServicesUne expertise tout au long du cycle de vie informatique  Entreprise Strategy                            ...
Thomas Lebrun  Consultant Infinite Square  MVP Client Application Development  Spécialités   .NET   XAML (Silverlight, W...
INFINITE SQUARE en quelquesmots…de conseil, expertise, réalisation, et formation,   Société     exclusivement sur les tech...
Objectif de la session   Des techniques éprouvées  Pour vous faire gagner du temps  
Agenda  Recap!*  Les Behaviors, les ViewStates*  Quel Framework MVVM ?  Pattern ViewModelLocator  Bien choisir ses contrôl...
Récap !  Vu aux TechDays 2011    Architecture type       IoC       Chargement de Modules       Services       ViewFir...
Récap !  Pourquoi XAML en entreprise ?      Disponible sur tous types de form factors      Haute productivité      Ecos...
Les behaviors  Equivalent des méthode d’extensions pour les contrôles  Permettent d’ajouter simplement des fonctionnalités...
Utilisation des behaviors !Jetons nous à l’eau 
Les ViewStates  Permet de définir des états visuels avec transitions  Très utilisé avec les formulaires    Passage du mod...
Utilisation des ViewStates !
Quel Framework MVVM ?  Il y a beaucoup de choix de qualité !  Critères    Commanding     Modularité, messaging     Impa...
Quel Framework MVVM ?  Il y a beaucoup de choix de qualité !     MVVM Light     Cinch     Prism     Caliburn     …
ViewModelLocator  Approche MVVM  Point d’accès central à l’ensemble des ViewModels  Facilite l’utilisation de l’injection ...
ViewModelLocatorBlendabilité
Bien choisir ses contrôles  Fonctionnalités VS Complexité VS Performance  Checklist    Behaviors    Retemplate ? Héritag...
Bien choisir ses contrôles :DataGrid   Cas 1 : Quand la ListView suffit       Lecture seule       Performance       Sim...
Bien choisir ses contrôles :DataGrid   Cas 2 : Composants du marché      Utilisation d’un composant tiers      Possibili...
Bien choisir ses contrôles :DataGrid   Cas 2                              myUIModel                                  =    ...
Bien choisir ses contrôles :DataGridla mano   Cas 3 : à      Performance      Grille interactive, edition/lecture simple...
Bien choisir ses contrôles  Que vous le vouliez ou non : vous créez un framework   Quel est son coût d’entrée ?   Quelle...
Asynchronisme  Libérez le thread UI dès que possible!  Ressenti de l’utilisateur    Contrôle    Performance    Qualité ...
Asynchronisme  Libérez le thread UI dès que possible!  Concrètement    BackgroundWorker    Tasks    Méthodes Async sur ...
AsynchronismeFeelin’ good
Gestion élégante des erreurs  Relativisez !    Prévoir les erreurs imprévues    Récupérer les traces    Inviter l’utili...
Gestion des erreurs(Sauf pour Thomas qui n’en fait jamais)
Q&A    13:00 WPF 4.5 Quoi de neuf pour les développeurs?    14:30 XAML / WPF Chasse aux fuites mémoire !
Pour aller plus loin  Chaque semaine, les DevCamps                        Prochaines sessions des Dev Camps               ...
Prochain SlideShare
Chargement dans…5
×

Améliorer votre productivité XAML en entreprise !

167 vues

Publié le

Testabilité, modularité, maintenabilité, performance. Autant de sujets à traiter pour le développeur de clients riches. Cette session décrira les patterns couramment utilisé en entreprise pour répondre à ces problématiques.

Publié dans : Technologie
0 commentaire
0 j’aime
Statistiques
Remarques
  • Soyez le premier à commenter

  • Soyez le premier à aimer ceci

Aucun téléchargement
Vues
Nombre de vues
167
Sur SlideShare
0
Issues des intégrations
0
Intégrations
1
Actions
Partages
0
Téléchargements
5
Commentaires
0
J’aime
0
Intégrations 0
Aucune incorporation

Aucune remarque pour cette diapositive
  • LUC
  • LUC
  • LUC
  • THOMAS
  • THOMAS
  • THOMAS
  • THOMAS
  • LUC
  • Thomas
  • Thomas
  • Thomas
  • Thomas
  • Luc + Thomas
  • Luc + Thomas
  • Thomas
  • Thomas
  • Thomas
  • Luc
  • Luc
  • Luc
  • Luc
  • Luc
  • Luc
  • Luc
  • Luc
  • Luc
  • Luc
  • Luc
  • Améliorer votre productivité XAML en entreprise !

    1. 1. palais descongrèsParis7, 8 et 9février 2012
    2. 2. Améliorez votreproductivité XAML en 07/02/2012entrepriseLuc VO VAN Thomas LEBRUNConsultant Dev/UX ConsultantMicrosoft Infinite Square MVP Client App Dev
    3. 3. Luc Vo Van Consultant chez Microsoft Consulting Services Spécialités  .NET  XAML (Silverlight, WPF, Windows Phone, Surface, Metro…)  Expérience Utilisateur (UX)  Windows Azure
    4. 4. Microsoft ServicesUne expertise tout au long du cycle de vie informatique Entreprise Strategy Microsoft Consulting Services Support Premier Evaluation Développement Stabilisation Support Planification Déploiement Opérations Alignement business & IT Déploiement et adoption Optimisation et Opération Partenaires
    5. 5. Thomas Lebrun Consultant Infinite Square MVP Client Application Development Spécialités  .NET  XAML (Silverlight, WPF, Windows Phone, Surface, Metro…)  Expérience Utilisateur (UX) Auteur de:  WPF par la pratique  MVVM: De la découverte à la maitrise
    6. 6. INFINITE SQUARE en quelquesmots…de conseil, expertise, réalisation, et formation, Société exclusivement sur les technologies Microsoft de développement d’applications et de la plateforme applicative 25+ collaborateurs spécialisés sur les techno MS, dont 10 MVP… GOLD Certified Partner sur 4 domaines de compétences Agréé CIR Centre de formation agréé
    7. 7. Objectif de la session Des techniques éprouvées Pour vous faire gagner du temps 
    8. 8. Agenda Recap!* Les Behaviors, les ViewStates* Quel Framework MVVM ? Pattern ViewModelLocator Bien choisir ses contrôles, cas concrets! Asynchronisme : des applications réactives Gestion élégante des erreurs
    9. 9. Récap ! Vu aux TechDays 2011  Architecture type  IoC  Chargement de Modules  Services  ViewFirst / ViewModelFirst  Testing
    10. 10. Récap ! Pourquoi XAML en entreprise ?  Disponible sur tous types de form factors  Haute productivité  Ecosystème riche  Développeurs  Documentation (MSDN, Blogs, Codeplex…)  Frameworks & contrôles tiers  Outillage mature (VS + Blend, outils tiers)
    11. 11. Les behaviors Equivalent des méthode d’extensions pour les contrôles Permettent d’ajouter simplement des fonctionnalités  Sans avoir accès au code source  Sans faire d’héritage Basé sur le SDK Expression Blend
    12. 12. Utilisation des behaviors !Jetons nous à l’eau 
    13. 13. Les ViewStates Permet de définir des états visuels avec transitions Très utilisé avec les formulaires  Passage du mode édition au mode lecture  Passage du mode simple au mode détaillé Utilisable avec MVVM  Liaison aux ViewModels avec le DataStateBehavior Attention à la taille du XAML à parser !
    14. 14. Utilisation des ViewStates !
    15. 15. Quel Framework MVVM ? Il y a beaucoup de choix de qualité ! Critères  Commanding  Modularité, messaging  Impact sur le code, adhérence  Shell services  Validation
    16. 16. Quel Framework MVVM ? Il y a beaucoup de choix de qualité !  MVVM Light  Cinch  Prism  Caliburn  …
    17. 17. ViewModelLocator Approche MVVM Point d’accès central à l’ensemble des ViewModels Facilite l’utilisation de l’injection de dépendances  Flexibilité par l’injection  Meilleure "blendabilité"
    18. 18. ViewModelLocatorBlendabilité
    19. 19. Bien choisir ses contrôles Fonctionnalités VS Complexité VS Performance Checklist  Behaviors  Retemplate ? Héritage ? Est-ce le bon contrôle ?  Utiliser un composant du marché  Réécrire un contrôle
    20. 20. Bien choisir ses contrôles :DataGrid Cas 1 : Quand la ListView suffit  Lecture seule  Performance  Simplicité
    21. 21. Bien choisir ses contrôles :DataGrid Cas 2 : Composants du marché  Utilisation d’un composant tiers  Possibilité d’en changer de composant en fonction des besoins  Performance  Ouverture aux autres technologies
    22. 22. Bien choisir ses contrôles :DataGrid Cas 2 myUIModel = new UIModel(source) Modèle métier Modèle UI myControl.Model = myUIModel Autre Contrôle maître Contrôle tiers Contrôle tiers mappings tiersControl <-> myUIModel
    23. 23. Bien choisir ses contrôles :DataGridla mano Cas 3 : à  Performance  Grille interactive, edition/lecture simples : que des chiffres  Contrôle from scratch  Panel virtualisé, scrolling  Réduction drastique du visual tree  Gestion de la navigation clavier…
    24. 24. Bien choisir ses contrôles Que vous le vouliez ou non : vous créez un framework  Quel est son coût d’entrée ?  Quelles sont les fonctionnalités implémentées ?  Est-il réutilisable ? Créez une solution autonome permettant de  Tester instantanément vos développements UI  Démontrer et expliquer votre framework  Eviter les dépendances accidentelles
    25. 25. Asynchronisme Libérez le thread UI dès que possible! Ressenti de l’utilisateur  Contrôle  Performance  Qualité  Confiance!
    26. 26. Asynchronisme Libérez le thread UI dès que possible! Concrètement  BackgroundWorker  Tasks  Méthodes Async sur les proxies WCF  Threads (au pire!)  ProgressBar  Sablier  StatusBar
    27. 27. AsynchronismeFeelin’ good
    28. 28. Gestion élégante des erreurs Relativisez !  Prévoir les erreurs imprévues  Récupérer les traces  Inviter l’utilisateur à les communiquer, le rassurer (un peu ) Concrètement  Envoyer par email  Copier dans le presse-papier  Journal des évènements (WPF)  Capture d’écran
    29. 29. Gestion des erreurs(Sauf pour Thomas qui n’en fait jamais)
    30. 30. Q&A 13:00 WPF 4.5 Quoi de neuf pour les développeurs? 14:30 XAML / WPF Chasse aux fuites mémoire !
    31. 31. Pour aller plus loin Chaque semaine, les DevCamps Prochaines sessions des Dev Camps 10 février Open Data - Développer des applications riches avec le protocole Open Live Meeting ALM, Azure, Windows Phone, HTML5, OpenData 2012 Data http://msdn.microsoft.com/fr-fr/devcamp 16 février 2012 Live Meeting Azure series - Développer des applications sociales sur la plateforme Windows Azure 17 février Live Meeting Comprendre le canvas avec Galactic et la librairie three.js 2012 Téléchargement, ressources et 21 février 2012 Live Meeting La production automatisée de code avec CodeFluent Entities toolkits : RdV sur MSDN 2 mars 2012 Live Meeting Comprendre et mettre en oeuvre le toolkit Azure pour Windows Phone 7, iOS et Android http://msdn.microsoft.com/fr-fr/ 6 mars Live Meeting Nuget et ALM 2012 Les offres à connaître 9 mars Live Meeting Kinect - Bien gérer la vie de son capteur 2012 13 mars 90 jours d’essai gratuit de Windows Azure 2012 Live Meeting Sharepoint series - Automatisation des tests www.windowsazure.fr 14 mars 2012 Live Meeting TFS Health Check - vérifier la bonne santé de votre plateforme de développement 15 mars Azure series - Développer pour les téléphones, les tablettes et le cloud Jusqu’à 35% de réduction sur Visual Studio 2012 Live Meeting avec Visual Studio 2010 Pro, avec l’abonnement MSDN 16 mars 2012 Live Meeting Applications METRO design - Désossage en règle dun template METRO javascript www.visualstudio.fr 20 mars Live Meeting Retour dexpérience LightSwitch, Optimisation de laccès aux données, 2012 Intégration Silverlight 23 mars Live Meeting OAuth - la clé de lutilisation des réseaux sociaux dans votre application 2012

    ×