Nicolas CLERC Consultant associé

Slides:



Advertisements
Présentations similaires
Intégration de logiciels Open-Source dans un ordinateur simplifié basé sur Linux Stage du 6 avril au 30 juin 2006.
Advertisements

Applications N-Tiers Rappels: architecture et méthodologie
Service Software Factory François MERAND Responsable groupe architectes DPE – Division Plateformes & Ecosystème Microsoft France
19 septembre 2006 Tendances Logicielles IBM Rational Data Architect Un outil complet de modélisation et de conception pour SGBD Isabelle Claverie-Berge.
Connecter des données métier à Office SharePoint Server 2007 via le Business Data Catalog.
3/26/2017 7:29 PM Taxonomie et gouvernance Organiser le patrimoine informationnel des entreprises © 2006 Microsoft Corporation. All rights reserved. This.
Tolérance aux défaillances de logiciel
Introduction Pour concrétiser l’enseignement assisté par ordinateur
XML - Henry Boccon-Gibod 1 XML, Langage de description La question du choix de formalismes Les entités et leur représentations modalités de modèles et.
1 Les technologies XML Cours 1 : Les Web Services et Architectures Orientées Services Fé vrier Version 1.0 -
Design Pattern MVC En PHP5.
UML (Unified Modeling Langage)
Urbanisation et Architecture CNAM NFE107
Mitsuru FURUTA Relations techniques développeurs Microsoft France
Systèmes d’exploitation
Séminaire sur la qualité en entreprise 25/09/2013 Klein Christophe.
Page de garde Introduction aux Design Patterns ISIA, Mars 2003
Etude des Technologies du Web services
Présentation de Windows Presentation Foundation Vers une nouvelle génération dinterfaces graphiques.
Sommaire Objectif de Peakup Principes de fonctionnement
GWT UML Un modeleur UML en GWT
Chaque use-case génère un ou des scénarios, traduits par des diagrammes objets, qui permettent d’introduire et/ou de compléter les diagrammes des catégories.
420-B63 Programmation Web Avancée Auteur : Frédéric Thériault 1.
Développement d’un réseau social professionnel
SYSTEMES D’INFORMATION
Présentation du mémoire
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.
Nicolas CLERC Tekigo – Cofounder
Processus d'un projet F.Pfister
J2EE vs .NET Réaliser par : SEIF ENNACER BADRA && CHETOUI RIM.
DataBinding avancé Mitsuru FURUTA, relations techniques développeurs –
Introduction Les contrôles Les templates de données Les vues Conclusion.
Créez des applications Silverlight 3 David Rousset Relations Techniques avec les développeurs Microsoft France
Proposition pour un modèle à grains extrêmement fins David Fauthoux directeur : Jean-Paul Bahsoun IRIT.
AngularJS.
Designs Patterns comment rendre son code faiblement couplé, et maintenable...
Quand l’agilité n’est pas une option
Le contenu est basé aux transparents du 7 ème édition de «Software Engineering» de Ian Sommerville«Software Engineering» de Ian Sommerville B.Shishedjiev.
Le contenu est basé aux transparents du 7 ème édition de «Software Engineering» de Ian Sommerville«Software Engineering» de Ian Sommerville B.Shishedjiev.
Le web service
Outil de conception d’applications WPF Anciennement « Interactive Designer » Orienté « intégrateur graphistes » Particularité : Blend tm est une application.
Qu'est-ce qu'un ERP  Outils automatisé pour modéliser les comportements d'une entreprise afin de les rendre plus automatiques.
1 journée, 5 sessions, 1 réalisation.NET Enterprise Realization Day.
RDA 209 : WPF Toolkit et bonnes pratiques
François CARCENAC,Frédéric BONIOL ONERA-DTIM Zoubir MAMMERI IRIT
Présentation du framework JSF (Java Server Faces) dans le modèle événementiel MVCII
Struts.
MOCK.
Entity/Facet/Pattern Une application qui en a…
22 WPF pour les appli métier [Retour d’expérience] 8 Février 2010 RDA 203 Alexandre Arnaudet – Damien Thouvenin CLT-Services.
L’enseignement de spécialité SLAM
Iup MIAGe 3° année Projet MIAGe Toulouse – Groupe 21 Charte graphique.
EPREUVE E6 : PARCOURS DE PROFESSIONNALISATION
2 Industrialiser et accélérer le développement Windows Phone 7 8 Février 2010 Giacopino Cyril Directeur production – Pôle.NET TEQUILARAPIDO.
Fabrice Meillon & Stanislas Quastana Architectes Infrastructure Microsoft France
Richard KRITTER Flavien LAURENT Université de Paris-Est Marne La Vallée (UPEMLV), Ingénieur.
Smart Client Software Factory DotNetHub 04/09/2010 Vincent Goossens 8/09/20101Smart Client Software Factory.
Silverlight 4 Bases nécessaires aux développement d’une application d’entreprise.
22 Visual Studio Tools et Office /02/2010 Thomas LEBRUN Architecte Access It Sebastien BOVO Application Development Consultant Microsoft France.
Développement d’application Nomade (iOS & Xamarin)
TP D’UML Groupe N° 3.
Présentation de Qt Iris 1
Diagramme de Composants
2 Alain METGE SOGETI
Mon application Silverlight/WPF et la guerre des patterns
Developer Day Développer des applications pour le Windows Store avec HTML5, JavaScript et CSS3 David Rousset Technical Evangelist – Microsoft France
Création d’applications distribuées.NET Ziriad Saibi Relation technique éditeurs de logiciels Microsoft France.
1 Silverlight & XNA Développeurs, à vous le mobile! Pierre Cauchois - Microsoft France Relations avec les développeurs (mobiles et embarqués)
BlueJ_VII 1 Java, les objets : tout de suite ! Conception de classes (1) Notes de cours associées au chapitre 7 tutorial BlueJ
Schéma de base de données Présentation. Conception du schéma logique  Transformation du schéma conceptuel en structures de données supportées par les.
Transcription de la présentation:

Nicolas CLERC Consultant associé

TEKIGO est une société de conseil et d’expertise en ingénierie logicielle, spécialisée dans l’accompagnement technologique, essentiellement autour de la plate-forme Microsoft®.NET, des entreprises et des collectivités publiques, de la startup aux grands comptes.

La plupart des développeurs démarrent en WPF de la même façon qu’en Winform Nommage de tous les contrôles Gestion des handlers sur les évènements provenant des contrôles dans le code behind Stockage des références au modèle objet dans le code behind Alimentation directe des contrôles par code

Approche programmatique plutôt que déclarative Couplage fort entre le code d’interaction avec les données et l’interface utilisateur Usage de références de noms et de types Contraintes pour le responsable du design de l’application Difficile à tester, pas de test unitaires sur le code behind Pas d’utilisation du Databinding bidirectionnel, une des fonctions les plus puissantes de WPF

View : La couche graphique de l’application Utilise le « ViewModel » dans son « DataContext » pour le « binding » S’occupe de transformer les données en éléments visuel avec les « Data Templates » Vous savez qu’elle est bien faite si il n’y a quasiment pas de « code behind » à part les animations et la gestion de « layout » View : La couche graphique de l’application Utilise le « ViewModel » dans son « DataContext » pour le « binding » S’occupe de transformer les données en éléments visuel avec les « Data Templates » Vous savez qu’elle est bien faite si il n’y a quasiment pas de « code behind » à part les animations et la gestion de « layout » ViewModel : Expose à la vue les données nécessaires Doit implémenter INotifyPropertyChanged (ou DependencyObject) et ObservableCollection Expose les comportements pour la vue (habituellement, les commandes) Spécifique pour chaque vue mais n’hérite d’aucune classe WPF Ne fait aucune supposition sur comment la couche graphique va binder Facile à tester unitairement ViewModel : Expose à la vue les données nécessaires Doit implémenter INotifyPropertyChanged (ou DependencyObject) et ObservableCollection Expose les comportements pour la vue (habituellement, les commandes) Spécifique pour chaque vue mais n’hérite d’aucune classe WPF Ne fait aucune supposition sur comment la couche graphique va binder Facile à tester unitairement Model/DataModel : Responsable des données métiers Si les données sont trop lourdes, utiliser un pattern spécifique pour ne pas bloquer la couche graphique Peut combiner plusieurs sources de données Model/DataModel : Responsable des données métiers Si les données sont trop lourdes, utiliser un pattern spécifique pour ne pas bloquer la couche graphique Peut combiner plusieurs sources de données Le Pattern Model-View-ViewModel

Première version de notre application

Développement parallélisé des composants avec problématique de licences, déploiement partiel des modules, voire de versions spécifiques de modules : Chargement dynamique des modules Modification de la structure d’affichage du Shell de l’application Communication entre ces modules (sans inter- dépendance)

L'objectif du Composite Application Guidance pour WPF (CompositeWPF) est de fournir un Framework sur lequel viendront se greffer des applications WPF modulaire. Ce socle, destiné à s'interfacer avec le Desktop, préfigure en quelque sorte le bureau WPF de demain Découpage: possibilité d’adopter tout ou partie du framework. Permet d’activer ajouter ou enlever facilement des fonctionnalités Extensibilité : permet d’ajouter, de remplacer des morceaux du Framework facilement Testabilité : l’implémentation de référence permet d’utiliser un pattern de séparation de la couche de présentation et rend donc l’UI testable

Mise en œuvre du Bootstrapper et chargement des modules

« Shell » – Fenêtre principale « Regions » – Zone nommée pour le placement des vues « Views » – UI + logique de présentation Region <ContentControl RegionManager.RegionName= “ZoneB” /> <ContentControl RegionManager.RegionName= “ZoneB” />

Définition de la structure d’affichage du Shell et injection de dépendance

Développement isolé des composants avec problématique de licences, déploiement partiel des modules, voire de versions spécifiques de modules : Chargement dynamique des modules Modification de la structure d’affichage du Shell de mon application Communication entre ces modules (sans inter- dépendance)

« Event Aggregator » Publication/Souscription d’évènements faiblement couplés « DelegateCommand » & « Composite Command » Module B Order Detail Module A Order Event Aggregator Subscribe Publish Event

Agrégation d’évènements

Commandes composites, suppression des dépendances binaires

Développement d’une application métier sous Windows WPF est la technologie d’aujourd’hui WPF >= Effet Whoaaaaaaaa !!! Puissance du Databinding Séparation de l’aspect visuel et de la logique d’interaction Adéquation à de multiples patterns : M-V-VM, Routed Command Développement d’une application composite sous Windows Composite Application Guidance for WPF & Composite Application Library : Best Patterns & Practices et implémentation de référence Chargement dynamique des modules : BootStrapper et injection de dépendance Définition la structure d’affichage du « Shell » : Concept de « régions » Communication inter-modules : Agrégation d’évènements Commandes composites

Blog de Nicolas Clerc Tekigo Blog de Stéphane Goudeau Blog de John Gossman’s Blog de Dan Crevier pattern-series.aspx pattern-series.aspx Blog de David Hill’s Composite WPF and Silverlight

14 – 15 avril 2010, CICG

Classic Sponsoring Partners Premium Sponsoring Partners