bb899456.polaroid%20coach%20silverlight(fr-fr,MSDN.10)[1] Avant de partir en vacances, je me suis occupé de réaliser une petite série de WebCasts (26 en tout pour près de 4h30 de visionnage) pour vous permettre d’apprendre à prendre en main Silverlight 3. J’ai essayé de vous laisser jouer avec la plupart des grands concepts de Silverlight et des grandes nouveautés de la version 3 : pixel shaders, accélération GPU, binding entre éléments, projection 3D et out of browser. Sans oublier la composante business représentée par les 2 derniers labs sur .NET RIA Services.

Nous ferons évoluer la même application au fur et à mesure de l’introduction des concepts afin d’avoir un fil conducteur sympathique.

Le coach est dors et déjà en ligne ici : http://msdn.microsoft.com/fr-fr/silverlight/msdn.coachsilverlight.aspx 

Comme d’habitude, vous trouverez une formule qui marche bien : une vidéo présentant les concepts sur des slides PowerPoint puis une vidéo démontrant le concept à travers un lab réalisé sous Visual Studio 2008. Vous aurez également en complément le code source de départ de chaque lab et le code source d’arrivée si vous suivez bien les étapes. Pour terminer, le lab est livré sous forme écrite en plus de la version vidéo. Vous pouvez donc suivre le lab en fonction de vos préférences vidéo ou écrit (sachant que parfois les 2 sont bien complémentaires).

Notre marketeuse préférée (Miss Marine Tranquard) n’a publié pour l’instant qu’une partie de la série. Elle s’occupera ensuite de publier 2 nouveaux labs par semaine. Nous n’avons pas encore tout publié car je n’ai pas fini d’écrire les labs “écrits”.

Voici le programme complet pour vous donner une idée de ce qui vous attend (en vert les concepts, en rouge les Labs):

001 - Présentation générale de Silverlight 3 : Ce webcast est accessible à tout le monde (même aux ITs ! :)) pour découvrir Silverlight pour la 1ère fois ainsi que pour découvrir quelques nouveautés de Silverlight 3 en action. Nous positionnons l’agenda des 26 WebCasts, la technologie et certains contrôles communautaires supplémentaires.

002 - Les bases d'une application Silverlight : Nous verrons ici la structure d’une application Silverlight, où elle s’héberge et son format.

003 - Lab Etape 0 : création d’une application Silverlight 3 vide de type Navigation Application et analyse de son fonctionnement.

004 - Concepts XAML, Formes de bases et Events : Nous verrons ici sommairement ce qu’est que le XAML. Puis nous verrons les basiques, quelques contrôles de bases et la gestion évènementielle.

005 - Lab Etape 1 : mise en place de l’application qui va nous servir tout le long des 12 labs. Nous allons ici faire nos premiers pas en XAML et réagir à quelques évènements. Dans un 1er temps, notre application aura pour but l’affichage de vidéos stockées sur un serveur distant.

006 - Silverlight et la vidéo – WebClient : Nous découvrirons ici les possibilités média de Silverlight 3 avec la présentation du MediaElement, des formats supportés et une introduction au Smooth Streaming. Nous verrons aussi le principe du WebClient pour les téléchargement asynchrones.

007 - Lab Etape 2 : utilisation du MediaElement et du Webclient.

008 - Styles - Templating – DataBinding : Silverlight permet de modifier facilement le look & feel d’une application à travers des notions comme le style tout d’abord puis de manière plus étendue comme le templating. Nous verrons également un concept majeure de Silverlight : le databinding.

009 - Lab - Etape3 : modification complète de l’application en changeant un dictionnaire de ressource contenant tous les styles, mise en place du templating et du databinding.

010 - Binding entre elements - Transformation - Projection3D : Découverte de deux nouveautés de Silverlight 3 : le binding entre éléments et la projection 3D.               

011 - Lab - Etape4 : utilisation du binding entre éléments : textblock branché à une combobox puis slider branché à une projection 3D sur une vidéo.

012 - Animations classiques et easing - Moteur physique : Découverte des possibilités du moteur d’animation de Silverlight 3 dont les nouveautés : les EasingFunctions. Présentation rapide d’un moteur physique open source.

013 - Lab Etape5 : Utilisation d’Expression Blend 3 pour créer une animation « classique » puis ensuite élastique (Easing). Nous utiliserons également Blend 3 pour revoir quelques détails cosmétiques de l’application et découvrir l’intérêt de cet outil dans la manipulation du XAML par un designer.

014 - WCF et Silverlight 3 : Nous allons découvrir ici comment Silverlight peut communiquer avec un service distant de type WebService ou WCF. Nous verrons aussi quelques subtilités à connaître avec Silverlight dans ce contexte.

015 - Lab Etape 6 : création d’un service WCF « compatible Silverlight » et consommation de ce service depuis notre client Silverlight. Analyse du flux avec un outil de traces réseaux simple (Web Development Helper). Utilisation de la sérialisation texte XML puis binaire et comparaison entre les 2.

016 - SandBox - OpenSaveFileDialog – Quota : Silverlight tourne au sein du navigateur et dans un contexte dit de « client Web ». Cela implique donc des mécanismes de sécurité particuliers. Revue du SandBoxing et de l’accès aux fichiers de la machine exécutant l’application Silverlight.

017 - Lab Etape 7 : utilisation des APIs OpenFileDialog et SaveFileDialog pour lire une vidéo stockée localement et sauvegarder une vidéo distante localement.

018 - Pixel Shaders : Silverlight 3 apporte la possibilité de mettre en place des effets appelés Pixel Shaders. Découvrons comment s’en servir et leur principe.

019 - Lab Etape 8 : mise en place de pixel shaders de manière très simple via le XAML avec Visual Studio et Blend 3. Mise en place d’un pixel shader par code pour mise en emphase d’une fenêtre modale.

020 - Accélération Matérielle GPU : Silverlight 3 est désormais capable de tirer partie du GPU de la carte graphique. Cela n’est pas automatique cependant ! (comme les anti-biotiques). Découvrons les mécanismes d’utilisation.

021 - Lab Etape 9 : utilisons la carte graphique pour soulager le processeur et analysons dans quels cas elle est véritablement utilisée ou non.

022 - Out of browser et autres nouveautés : Silverlight 3 est capable de rendre une application fonctionnelle en dehors du navigateur en ne faisant quasiment rien. S’ajoute cependant des particularités intéressantes à ce mode dit « Offline ».

023 - Lab Etape 10 : rendons notre application disponible en dehors du navigateur. Nous allons voir ici également comment gérer la mise à jour automatique de notre application.

024 - Introduction à .NET Ria Services : .NET RIA Services est un nouveau framework ayant pour objectif d’apporter une expérience RAD (Rapid Application Development) au monde de la RIA. Il va donc grandement simplifier les problématiques de développement n-tiers.

025 - Lab Etape 11 : Reprise de notre application et enrichissement en suivant les étapes décrites ici : http://blogs.msdn.com/davrous/archive/2009/05/28/comment-d-velopper-des-applications-d-entreprises-orient-es-donn-es-avec-silverlight-3-introduction-net-ria-services-2-4.aspx pour faire appel à .NET RIA Services et afficher des données d’une base de données dans une grille.

026 - Lab Etape 12 : Suivi des étapes décrites ici : http://blogs.msdn.com/davrous/archive/2009/05/28/comment-d-velopper-des-applications-d-entreprises-orient-es-donn-es-avec-silverlight-3-introduction-net-ria-services-3-4.aspx pour gérer le paging, grouping, sorting, la sauvegarde, les child windows et la validation automatique de règles métiers.

En espérant que tout cela vous serve au mieux!

David, coach à ses heures perdues