Créez des applications Silverlight 3 David Rousset Relations Techniques avec les développeurs Microsoft France /
Agenda Présentation générale Intérêts, démo en action, outillages & types de contrôles disponibles Les bases d’une application Silverlight Structure, hébergement, XAML, contrôles de base & gestion évènementielle Quelques notions plus graphiques Gestion de contenu vidéos, téléchargements asynchrones Styles & templating DataBinding & Binding entre éléments Transformations dont pseudo 3D Utilisation de Blend 3 Modification du visuel Mise en place d’animations classiques puis naturelles
Agenda Notions plus avancées Appels de services WCF SandBoxing – OpenFileDialog / SaveFileDialog Pixel Shaders Out of Browser Accélération matérielle GPU Scénarios métiers orientés données Introduction à.NET RIA Services
Notions plus avancées Appels de services WCF SandBoxing – OpenFileDialog / SaveFileDialog Pixel Shaders Out of Browser Accélération matérielle avec le GPU
Appels de services WCF Le Web Services doit exposer un fichier WSDL and le serveur doit présenter un des fichiers crossdomain.xml ou clientaccesspolicy.xml Si un site est “compatible” avec Flash, il le sera donc avec Silverlight Pour consommer un Service (Web), il suffit de créer la classe proxy qui sera ensuite utilisée par la code : À l’aide de l’interface utilisateur de Visual Studio (« Add Service Reference ») Visual Studio génère une classe proxy WCF Seul des appels asynchrones peuvent être faits, pour une meilleure expérience utilisateur Bindings possibles: basicHTTPBinding avec sérialisation XML ou Binaire
Appels de services WCF Nouveautés Silverlight 3: Encodage binaire (par défaut désormais avec WCF SL Enabled) Simplification du support des services Duplex Remontée des erreurs Nouveau mode de sécurité : TransportSecurityWithMessageCredential Plus d’infos ici : g-the-performance-of-web-services-in-sl3-beta.aspx & new-with-web-services-in-silverlight-3-beta.aspx g-the-performance-of-web-services-in-sl3-beta.aspx new-with-web-services-in-silverlight-3-beta.aspx
Lab – Etape 6 Création d’un service WCF retournant la liste des vidéos Consommation du service dans Silverlight
Sandbox Les applications Silverlight s’exécutent dans un environnement sécurisé (« sandbox »), il est impossible d’accéder aux ressources de la machine : Fichiers Base de registre Etc… Une possibilité de lecture sur le disque : Le contrôle OpenFileDialog / SaveFileDialog qui permet d’ouvrir une boîte de dialogue permettant à l’utilisateur de choisir un fichier. Possibilité d’utiliser l’Isolated Storage pour stocker des données propres à l’application ou au site (paramètres, scores, etc…) Zone de stockage partagée par les différents navigateurs Propre à chaque application Silverlight ou site web Taille limitée à 1 Mo par défaut par application Silverlight ou site Web Peut être étendu par : IsolatedStorageFile.IncreaseQuotaTo(long) (seulement suite à une action utilisateur)
Lab Etape 7 OpenFileDialog SaveFileDialog
Pixel Shaders 1/2 Objectif : appliquer des traitements sur chaque pixel d’une image Effets par défaut : DropShadow : création d’une ombre Blur : création d’un effet flou
Pixel Shaders 2/2 Effets personnalisés Utilisation du langage HLSL (proche du C) pour créer son propre effet Faisable depuis le SDK DirectX ou WPF Importation du shader compilé dans le projet Quelques exemples : Utilisation de la propriété “Effects” pour appliquer un effet Tutorial complet à suivre ici : /27/tutorial-pour-utiliser-simplement-les-pixel- shaders-avec-silverlight-3.aspx /27/tutorial-pour-utiliser-simplement-les-pixel- shaders-avec-silverlight-3.aspx
Lab Etape 8 Pixel Shader : mise en place d’un effet d’ombre portée Pixel Shader: mise en place d’un effet de flou
Accélération matérielle (GPU) Disponible sur PC (DirectX) et sur Mac (OpenGL) Disponible dans le navigateur et en plein écran sur PC, uniquement en plein écran sur Mac Positionnement de la propriété “EnableGPUAcceleration” sur la balise <param name… de la page Web Positionnement de la propriété CacheMode="BitmapCache" sur l'élément à positionner dans le buffer matériel Désactivé par défaut Bénéfique pour certains scénarios : Quand un élément est transformé, plus particulièrement remis à l’échelle Quand un élément a de la transparence Lorsqu’un élément est “clippé” Plus d’informations ici: ght-3-pr-cisions-sur-l-acc-l-ration-mat-rielle-gpu.aspxhttp://blogs.msdn.com/davrous/archive/2009/04/23/silverli ght-3-pr-cisions-sur-l-acc-l-ration-mat-rielle-gpu.aspx
Lab Etape 9 Activons l’accélération matérielle via le GPU Et analysons un peu l’ensemble
© 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.