Nicolas CLERC Tekigo – Cofounder

Slides:



Advertisements
Présentations similaires
De Windows Forms à Windows Presentation Foundation
Advertisements

« Les Mercredis du développement » Introduction Office « 12 » Présenté par Bernard Fedotoff Microsoft Regional Director Agilcom.
Comment Protéger les bases SQL avec System Center Data Protection Manager 2007.
Mix 08 Las Vegas Lergonomie Web ou comment maîtriser son trafic Loutillage du créatif Séduire vos utilisateurs Créer une relation permanente sur PC Etendre.
Automatisation de Tâches Scenarios
Personnalisation des sites SharePoint avec SharePoint Designer 2007
Mitsuru FURUTA Relations techniques développeurs Microsoft France
1 ARCHITECTURE DACCÈS la méthode générale modèle de données définitions module daccès / modules métiers construction des modèles les modules daccès, les.
Page de garde Introduction aux Design Patterns ISIA, Mars 2003
Démarche Analyse des OGL et des Méthodes Objectifs : Activités :
Santé pubic Plan catastrophe Globalisation de léconomie Agenda vert Emissions Phénomène durbanisation Population viellissante Qualité de service Enjeux.
Trucs et Astuces { Visual Studio 2008 – VB 9 (C#3)} Grégory Renard CTO – R&I Manager Wygwam Microsoft Regional Director / Microsoft MVP
Microsoft Regional Director Agilcom
Présentation de Windows Presentation Foundation Vers une nouvelle génération dinterfaces graphiques.
Damien Caro Architecte Infrastructure Microsoft France
Benjamin Soulier Technical Expert Cambridge Technology Partners Le meilleur des deux mondes - SharePoint 2010 et Azure!
Type de contenu. © Partouche David / 2007 version 0.1 Colonne de site Une colonne de site permet de définir un champs qui sera exploitable au sein de.
1 Quakelight : le making of Julien Frelat Chef de projet InnoveWare Solutions Code Session : RIA309.
Patrick Guimonet Architecte Infrastructure Microsoft France.
Eric Le Loc’h Microsoft France
Office 365: Vue d’ensemble de la solution
Patrons de conceptions de créations
NET LINQ, ADO Vnext, Orcas,… Pierre COUZY Stéphane GOUDEAU Architecte en Système d’information Division Plateformes et Ecosystème Microsoft France.
Postes clients OLAP Fichiers XML SGBD Requêtes Analyses Reports Intégration Synchronisation Recherche Serveurs.
Créez des applications Silverlight 3 David Rousset Relations Techniques avec les développeurs Microsoft France
Créez des applications Silverlight 3 David Rousset Relations Techniques avec les développeurs Microsoft France
22 Visual Studio Tools et Office 2010 Thomas LEBRUN Architecte Access It Sebastien BOVO Application Dev Consultant Microsoft France
475 collaborateurs 300 formateurs CPLS Gold Certified depuis collaborateurs 300 formateurs CPLS Gold Certified depuis M€ de chiffres d’affaires.
Introduction à la plateforme .NET
Outil de conception d’applications WPF Anciennement « Interactive Designer » Orienté « intégrateur graphistes » Particularité : Blend tm est une application.
Dyalog.Net Peter Donnelly Managing Director Dyadic Systems Toronto 30/10/2002.
RDA 209 : WPF Toolkit et bonnes pratiques
Réinventez votre messagerie
Créez des applications Silverlight 3 David Rousset Relations Techniques avec les développeurs Microsoft France
22 WPF pour les appli métier [Retour d’expérience] 8 Février 2010 RDA 203 Alexandre Arnaudet – Damien Thouvenin CLT-Services.
2 Industrialiser et accélérer le développement Windows Phone 7 8 Février 2010 Giacopino Cyril Directeur production – Pôle.NET TEQUILARAPIDO.
Richard KRITTER Flavien LAURENT Université de Paris-Est Marne La Vallée (UPEMLV), Ingénieur.
Silverlight 4 Bases nécessaires aux développement d’une application d’entreprise.
Qui a déjà manipulé SQL Server ? Toutes versions ? 2005 ? 2008 ? Qui utilise SQL Server en production ? Toutes versions ? 2005 ? 2008 ?
Nicolas CLERC Consultant associé
22 Visual Studio Tools et Office /02/2010 Thomas LEBRUN Architecte Access It Sebastien BOVO Application Development Consultant Microsoft France.
1 Quelles nouveautés pour les Communications Unifiées ? Damien Caro Architecte Infrastructure Microsoft France
1 Applications d’entreprise avec.NET 4.0 et Silverlight 4 David Rousset Mitsuru Furuta
Une heure de démonstration! Démo 1: Administration de MOSS 2007 Démo 2: Aperçu de System Center Operation Manager Démo 3: Sauvegarde/Restauration avec.
Mix 08 Las Vegas L’outillage du créatif L’ergonomie Web ou comment maîtriser son trafic Séduire vos utilisateurs Créer une relation permanente sur PC.
1 Eric Mittelette Eric Vernié DPE – Microsoft France.
1 Chesné Pierre
Benjamin Soulier Technical Expert Cambridge Technology Partners Les nouveautés de Windows Azure.
Nicolas CLERC QuidMind S.A. Microsoft Regional Director Windows Phone 7 … Allez plus loin …
Créez des applications Silverlight 3 David Rousset Relations Techniques avec les développeurs Microsoft France
Phase d’étudeDéveloppement Marketing & Vente.
1 Panorama de l'offre SaaS (Software as a Service) de Microsoft Damien Caro Architecte Infrastructure
Créez des applications Silverlight 3 David Rousset Relations Techniques avec les développeurs Microsoft France
1 Silverlight & XNA Développeurs, à vous le mobile! Pierre Cauchois - Microsoft France Relations avec les développeurs (mobiles et embarqués)
Microsoft Confidential À propos de ce support Cette présentation est conçue pour être utilisée par des agences qui souhaitent aider leurs clients à comprendre.
Principale entreprise française indépendante dédiée aux technologies Microsoft 12 ans d’expérience dans le conseil et la réalisation de projets à haute.
Utilisation du logiciel EduStat©
PowerShell sur Linux : pourquoi et comment ?
Français 41 – Unité 3 Leçon B – Quels cours suivra un lycéen
Unité 2– L’art de la nourriture
Création du statut de membre non plongeur
L’Oculus Rift pour améliorer l’efficacité et la logistique en entrepôt
Proposition pour un comité composé de 9 membres
Unité 3 – On fait les courses
Carlos Oliveira Club Subaquatique du CERN
Comment créer des applications Sharepoint Intelligentes
11/29/2018 4:22 AM Mail: Tel: recrute
REPLICA Hyper-V Comme solution à un PRA
Utilisation du logiciel EduStat©
Transcription de la présentation:

Nicolas CLERC Tekigo – Cofounder

Impact non technologique de WPF Architectures possibles facilitant la collaboration Rendre accessible les données Déclencher des traitements et des actions

Hormis les nouveautés techniques, WPF impacte La structure des projets et des équipes Importance de lesthétique Hors de compétence du développeur Apparition de nouveaux profils dans les équipes Designer Intégrateur WPF

On retrouve la situation connue lors des premiers projets web Soit piloté 100% dev esthétisme approximatif Soit piloté 100% design code & fiabilité très faible, réutilisabilité quasi impossible Actuellement les Webdesigner sont pour la plupart des profils hybrides maitrisant le design & le dev via des outils adaptés.

ADDesignerIntégrateur visuel développeurExpert technique Architect

DesignerDéveloppeur Création Forme Gabarit couleur Images Typographie Architecture Code Pattern Composant

La quadrature du cercle : Ne pas brider la créativité du designer Profiter de la puissance de WPF & de XAML Créer une architecture applicative fiable et performante 4 e point

Design -> intégration -> codage On laisse faire le designer Expression Designer Lintégrateur WPF se débrouille pour générer du XAML avec Expression Blend Le développeur se débrouille avec le XAML généré pour ajouter le code technique et fonctionnel Inconvénient : Mono itération une 2 e passe de design ou dintégration est excessivement risquée, complexe, donc couteuse

Le designer crée son visuel Le développeur crée un squelette technique en utilisant les contrôles standards de WPF IHM : ListBox, UserControl, … Event Handler : Click, SelectionChanged, … Lintégrateur prend le relais & à partir du squelette technique et plaque le visuel conçu par le designer En // le développeur commence à intégrer les éléments fonctionnels

Itération possible, mais évolution darchitecture complexe La structure technique du projet est relativement figée Complexité si le designer fait évoluer laspect esthétique de manière importante Idéal pour les prototypes, POC ou petites applications jetables

Décorréler complètement laspect esthétique et visuel, du fonctionnel de lapplication Modèle « à la MVC » adapté à la sauce WPF Fournir des éléments techniques visuels directement utilisable dans loutil de lintégrateur (Blend) Sans ligne de code ou de XAML Utilisation massive des Template & des Style

Contrôleur fonctionnel Visuel Controleur visuel Implémentation de lesthétique de lapplication Template Style StoryBoard Eventuellement seul le support technique est imposé : Window Page UserControl Implémentation de lesthétique de lapplication Template Style StoryBoard Eventuellement seul le support technique est imposé : Window Page UserControl Controleur visuel Contrôleur visuel Couche technique dintégration fonctionnelle. Multi instance Support du design visuel Intégration avec blend Expose les traitements & fonctionnalités sous la forme de Command DependencyProperty Event ObservableCollection Couche technique dintégration fonctionnelle. Multi instance Support du design visuel Intégration avec blend Expose les traitements & fonctionnalités sous la forme de Command DependencyProperty Event ObservableCollection Modèle de données Implémentation des fonctionnalités métiers de lapplication Très souvent sous la forme dun singleton Implémentation des fonctionnalités métiers de lapplication Très souvent sous la forme dun singleton Modèle de données Support de lintégration à WPF -ObservableCollection si possible - INotifyPropertyChanged Modèle de données Support de lintégration à WPF -ObservableCollection si possible - INotifyPropertyChanged

Une application de gestion de Contacts Une couche de données Fournit un ensemble de Contact Une couche fonctionnelle Modifier ses informations … Une couche dinteraction avec lutilisateur

Blend & Visual Studio 2008 Un namespace : System.ComponentModel Quelques attributs : [Category(« MaCategory »)] [Description(« Listes des contacts »)] [Browsable(true)] Quelques méthodes : DesignerProperties.GetIsInDesignMode(…) Permets de savoir si un DependencyObject est instancié au sein dun designer

Nécessité dexposer les données vers XAML/WPF Notifier les changements de valeur des données Notifier les changements dans le contenu des collections de données Les propriétés.NET Utilisable en XAML (mapping automatique en attribut XAML) Pas de binding Pas danimation

Permet à une classe de notifier tout changement survenu sur ses données Fonctionne sur un principe dabonnement

Collection générique notifiant tous changements survenus sur les éléments contenus dans la collection Utilisation couplée avec des classes implémentant INotifyPropertyChange Notification à tous les niveaux dimbrication Elément de la collection Données des éléments

Définie une donnée attachée à un élément et stocké en dehors de cet élement Utilisable pour Binding avancé, Animation, Suivre les changements de valeur, … Souvent couplé à une propriété pour laccès à la valeur par le code Le porteur doit hériter de DependencyObject

Permet dattacher une DependencyProperty à un DependencyObject qui nen était pas initialement pourvu Permet détendre le comportement déléments qui navaient pas été conçus pour cela. Souvent couplé à 2 méthodes statiques : SetMyProperty, GetMyProperty Ex: Canvas.Grid peut être appliqué sur un Label Grid.Row / Grid.Column applicable aussi sur un Label

Appeler une méthode ou une fonction Impossible directement à partir de Blend Sauf si lintégrateur est formé au langage.NET utilisé dans le projet Déclencher des modifications visuelles à partir du code fonctionnel sans connaitre laspect visuel de lapplication Impossible sauf usine à gaz et guide de programmation très cadré.

Code visuel Code fonctionnel Une RoutedCommand découple une action de la définition de son déclencheur Le déclenchement dune commande peut être comparé à lappel dune méthode. Un paramètre peut y être associé La déclenchement dune commande est disponible pour toute classe héritant de ButtonBase

De nombreuses commandes sont déjà définies dans le framework ApplicationCommands Copy/Paste... ComponentCommands MediaCommands NavigationsCommands EditingCommands … On peut créer ses propres RoutedCommand

Code fonctionnel Code visuel Exposé par le contrôleur visuel Attrapable en XAML par lintermédiaire des triggers pour modifier le visuel Déclenchement de storyboard, … Parcours de larbre visuel de WPF Autre Possibilité : Utiliser une DependencyProperty pour un déclenchement lié à un changement de valeur de donnée PropertyTrigger

La gestion du mode design peut être compliqué Fournir des données de test au designer en labsence de données réelles Simuler ou gérer des services non disponible en mode design Doit être pris en compte dès le début de la conception du projet

© 2007 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.