Ce diaporama a bien été signalé.
Nous utilisons votre profil LinkedIn et vos données d’activité pour vous proposer des publicités personnalisées et pertinentes. Vous pouvez changer vos préférences de publicités à tout moment.

Silverlight 4

4 564 vues

Publié le

This slide deck introduce Silverlight from version 2 to 4.
Content is french and mainly produced from PDC' 09 sessions contents.

Publié dans : Technologie
  • Soyez le premier à commenter

  • Soyez le premier à aimer ceci

Silverlight 4

  1. 1. Silverlight 4 BêtaPrésentation EPITA 26/11/2009<br />Frédéric Queudret - CEO<br />MPOWARE<br />http://www.mpoware.com<br />http://blogs.codes-sources.com/mpoware/<br />
  2. 2. Mpoware<br />Société d’édition de logiciels et prestation de services<br />Partenaire Microsoft & de l’Agile Training Center<br />http://msdn.microsoft.com/fr-fr/architecture/default.aspx<br />Experts & Architectes .NET<br />Frédéric QUEUDRET – SCIA ’96<br />Fondateur de la société Mpoware<br />Ex-Architecte du Microsoft Technology Center & MVP Client App Dev<br />LinkedIn: http://www.linkedin.com/profile?viewProfile=&key=1794819&trk=tab_pro<br />Articles Programmez.com 2009<br />Le développeur Agile / Dossier Méthodologies<br />La sécurité appliquée à .Net / Dossier Hacking, sécuriser votre code<br />Développer un gadget Skype pour Sideshow / Dossier Coding4Fun<br />Windows 7 Biometric Framework<br />Blog de Laurent Trébulle: http://blogs.ionis-group.com/epita/laurenttrebulle/2008/05/des_epiteens_qui_bougent_frede.html<br />
  3. 3. Silverlight: Présentation<br />Plug-in cross-browsers & cross platform<br />Windows, MacOS X, Linux via Moonlight*<br />IE, Firefox, Safari, Konqueror*, Google Chrome<br />Pour une nouvelle génération d’applications<br />Rich Internet Applications – RIA<br />Nouvelles expériences Media (Vidéo…)<br />Avec les mêmes principes que .NET<br />XAML (« à la » WPF) pour une séparation du Design et du Développement<br />Base Class Library (« à la » .NET Framework BCL en plus light)<br />Langages de développement .NET (C#, VB.NET, …)<br />Sandboxing garantit la sécurité (« à la » Code Access Security)<br />Outillage intégré (Visual Studio, Blend…)<br />Interaction avec Javascript , DOM & APIs Windows<br />
  4. 4. AOL Mail RIA<br />http://beta.aol.com/projects.php?project=webmailria&loc=0<br />
  5. 5. K2 blackpoint<br />http://www.k2.com/en/displaycontent.aspx?id=973<br />
  6. 6. Exemples d’applications en ligne …<br /><ul><li> SEAT Brochure commerciale en ligne (SL2): http://www.seat.co.uk/exeo/pagelife/
  7. 7. Jeu (SL2): http://www.joerassic.ch/
  8. 8. e-Commerce (SL2): http://www.lejardindelydie.com/
  9. 9. Publicité (SL2): http://streaming.live.com/
  10. 10. Accès aux ressources locales (SL3): http://smjenkins.members.winisp.net/slidentity/default.html
  11. 11. Twilight: http://msntwilight.com/ (SL3)
  12. 12. Démos SL3: http://blogs.msdn.com/jstegman/archive/2009/09/08/silverlight-3-sample-updates.aspx</li></ul>Démos de Silverlight<br />
  13. 13. Silverlight 1<br />Septembre 2007<br />Support Javascript<br />
  14. 14. Silverlight 2<br />Octobre 2008<br />Support .NET<br />Silverlight 1<br />Septembre 2007<br />
  15. 15. Silverlight 3<br />Juillet 2009<br />+60 contrôles<br />WCF Callback<br />Video HD<br />Nouvelles APIs<br />…<br />Silverlight 1<br />Silverlight 2<br />Septembre 2007<br />Octobre 2008<br />
  16. 16. Silverlight 4<br />Beta<br />Novembre 2009 (PDC09)<br />Silverlight 1<br />Silverlight 2<br />Silverlight 3<br />Septembre 2007<br />Octobre 2008<br />Juillet 2009<br />
  17. 17. Silverlight 4<br />Beta<br />WebCam, Print, Clipboard… <br />Fulltrust, Interop COM… <br />Encore plus d’APIs et d’optimisations!<br />Silverlight 1<br />Silverlight 2<br />Silverlight 3<br />Silverlight 4 Beta<br />Septembre 2007<br />Octobre 2008<br />Juillet 2009<br />Novembre 2009<br />
  18. 18. Architecture de Silverlight<br />
  19. 19. Poster Silverlight 2<br />Poster DeepZoom: http://joestegman.members.winisp.net/DeepZoom/<br />
  20. 20. Service<br />Rich Internet Application<br />Browser<br />Application<br />DB<br />Other Applications<br />Où se place Silverlight?<br />La logique de présentation/navigation estexécutéesur le client<br />Presentation<br />Logic<br />Data Access Layer<br />App<br />Logic<br />HTML<br />Network<br />Services<br />
  21. 21. <ul><li> XAML
  22. 22. Code-behind
  23. 23. Contrôles
  24. 24. Isolated Storage
  25. 25.
  26. 26. Les samples du SDK Browser</li></ul>Développer en Silverlight<br />
  27. 27. Développer pour Silverlight 4<br />Visual Studio 2010 Beta 2 ou Visual Web Developer Express 2010 Beta 2 (l’un ou l’autre)<br />http://msdn.microsoft.com/en-us/vstudio/dd582936.aspx<br />Silverlight Tools for Visual Studio 2010 <br />http://go.microsoft.com/fwlink/?LinkID=177508<br />Expression Blend for .NET 4 Preview (Silverlight 4 et WPF 4) <br />http://go.microsoft.com/fwlink/?LinkId=169446<br />WCF RIA Services (précédemment .NET RIA Services) (NOTE: Inclus dans les SL Tools pour Silverlight 4) <br />http://go.microsoft.com/fwlink/?LinkId=169231<br />Silverlight 4 SDK CHM<br />http://go.microsoft.com/fwlink/?LinkID=167824<br />Mise à jour du Silverlight Toolkit pour Silverlight 4 <br />http://silverlight.codeplex.com/<br />Silverlight Media Framework – Un nouveau framework Media Player en Open Source<br />http://smf.codeplex.com/<br />
  28. 28. Test.htm<br />
  29. 29. XAP (prononcer ZAP)<br />Fichier de déploiement d’un application Silverlight<br />Format ZIP<br />Généré par l’outil Chiron.exe <br />Compressé<br />Pour de meilleures performances<br />Ce fichier contient tous les éléments nécessaires à l’application<br />Pour utiliser les fichiers XAP, il faut rajouter un type mime à IIS (ou autre serveur Web)<br />Xap: application/x-silverlight-app<br />En standard dans Windows Server 2008<br />Contenu:<br />Les assemblies compilées<br />Le fichier AppManifest.xaml<br />Les fichiers ressources (images, …)<br />Etapes de chargement: http://community.irritatedvowel.com/blogs/pete_browns_blog/archive/2008/03/05/Xap_2100_-App_2100_-Pow_2100_-Packaging-and-Application-Startup-in-Silverlight-2-Beta-1-_2D00_-Part-2.aspx<br />
  30. 30. XAML<br />XAML est un langage déclaratif à base de tags<br />Utilisé pour définir l’interface d’une application Silverlight<br />MainPage.xaml dans un nouveau projet Visual Studio<br />Un layoutGrid par défaut nommé LayoutRoot<br />Équivalent à:<br />&lt;Rectangle Fill=&quot;Red&quot; Width=&quot;150&quot; Height=&quot;100&quot;/&gt;<br />Rectangle newRect = new Rectangle();<br />newRect.Width = 150;<br />newRect.Height = 100;<br />newRect.Fill = new SolidColorBrush(Colors.Red);<br />LayoutRoot.Children.Add(newRect);<br />
  31. 31. Layout<br />Disposition des éléments graphiques de l’IHM<br />Plusieurs possibilités<br />Grid<br />StackPanel<br />Canvas<br />DockPanel<br />WrapPanel<br />…<br />
  32. 32. Contrôles<br />Silverlight 4 étend le nombre de contrôles natifs<br />Voir Silverlight Toolkit<br />Template d’affichage par défaut<br />Customiser le look d’une application sans altérer son comportement<br />Styling (Styles)Changementsvisuelslégerssur un élément (Fonte, Couleur de fond, etc)<br />Skinning (Control Templates)Remplacer tout l’arbrevisuel d’un Elément<br />
  33. 33. Contrôles et Thèmes Visuels<br />
  34. 34. Contrôles nommés<br />Visual Studio définit systématiquement des attributs x:Name pour tous les éléments<br />Les contrôles nommés peuvent être référencés par code avec support Intellisense complet<br />
  35. 35. Le code<br />Support des langages .NET (C# ou Visual Basic)<br />Fichiers code-behind avec extension du langage<br />Exemple: MainPage.xaml.cs<br />Utilisé pour coder la logique applicative<br />Modèle de programmation événementiel<br />
  36. 36. Event handlers<br />Les Event handlers connectent les actions aux contrôles<br />Déclarésdans le XAML oubien au runtime dans le code-behind en C# au Page_Loaded<br />
  37. 37. Databinding<br />Le Databinding renforce la séparation entre la présentation des données et le code-behind « applicatif »<br />Avec tout objet implémentant IEnumerable<br />Arrays, Lists, Collections <br />DataTemplates contrôlent la présentation<br />Binding uni- ou bi-directionnel<br />
  38. 38. LINQ<br />Language INtegratedQuery apporte des capacités de requêtage natives à .NET<br />Requêter, projeter et filtrer des données issues de multiples sources<br />Mixé avec le code C#, VB, etc<br />Silverlight comprend System.LINQ et System.LINQ.Expression<br />
  39. 39. Intégration HTML<br />Silverlight permet la manipulation du DOM HTML et l’intégration JavaScript<br />Propose des « managedwrappers » pour le DOM et les éléments JS<br />Silverlight peut invoquer JS, JS peut invoquer du code managé<br />
  40. 40. Capacités de Silverlight pre – v4<br />Accès aux fichiers locaux, en read-only et en écriture dans l’« Isolated Storage »<br />Open/Save File Dialog<br />Stack de communication évoluée<br />Support web services, REST…<br />Sérialisation JSON, binaire…<br />Callback, support du mode Duplex<br />Intégration de DeepZoom (images très haute définition)<br />Large choix de contrôles (accordéon, turn page…)<br />Local Messaging: Communication locale entre plusieurs applications Silverlight<br />Bitmap/Pixel APIs<br />Animations plus naturelles (easingfunctions)<br />Support video/audio HD<br />Accélération matérielle via le GPU<br />Perspective 3D<br />Gestion du mode déconnecté et « out of browser »<br />
  41. 41. Les nouvelles fonctionnalités de Silverlight 4.0<br />http://silverlight.net/content/samples/sl4/toolkitcontrolsamples/run/default.html<br />
  42. 42. Nouvelles fonctionnalités<br />Drag&Drop de fichiers dans Silverlight<br />Support du clic bouton droit<br />Ajout des événements MouseRightButtonUp/Down <br />Usage: Menu contextuel…<br />Support natif de l’impression<br />Plus besoin de faire l’aller/retour avec le serveur<br />Impression depuis le rendu visuel<br />Impression depuis un rendu dynamique (non visuel)<br />Support des impressions paginées (événements StartPrint, PrintPage, EndPrint)<br />
  43. 43. Scrapbook App<br />Drap&Drop, Right Click et Print<br />http://scorbs.com/silverlight/pdc09/scrapbook<br />Démo<br />
  44. 44. Media<br />Support du streaming (Windows Media Server), Offline DRM, Mp4 DRM…<br />Support de la WebCam & Microphone<br />Informel’utilisateur de la prise de contrôle de la web cam<br />Accès direct aux flux vidéo et audio<br />APIs permettant de gérerplusieurspériphériques<br />
  45. 45. Networking<br />Multicast (Single ou Any) / UDP Listener<br />Support Authentification NTLM, Basic et Digest<br />…<br />client = new UdpAnySourceMulticastClient();<br />client.BeginJoinGroup(...);<br />client.BeginSendToGroup(...);<br />client.BeginReceiveFromGroup(...);<br />
  46. 46. Classroom<br />Multicast, RichTextEditor, support langue Arabe…<br />Démo<br />
  47. 47. RichTextArea & Bi-Directional Text<br />ReadOnlyouEditable<br />Hyperlinks<br />Multi-level Undo<br />FlowDirection<br />Nouveaux Langages: Arabic & Hebrew<br />…<br />
  48. 48. Autresfonctionnalités…<br />Contrôles<br />Support de la roulette souris pour le scroll (MouseWheel)<br />ContrôleViewBox<br />Styles implicites<br />…<br />Graphics<br />Support PNG étendu<br />CompositeTransform<br />Scale, Rotate, Skew, Translate<br />Autres<br />Assemblies compilables en SL 4 & WPF 4<br />Accès au Clipboard par programmation<br />Validation de donnéesaméliorée<br />…<br />
  49. 49. MouseWheel & PictureBrowser<br />MouseWheel, ViewBox…<br />Démo<br />
  50. 50. Trusted Out of Browser Applications<br />Cross Domain Networking Access<br />Accès aux fichiers<br />Native Integration<br />Notification, Window APIs<br />Autres:<br />HTML Hosting<br />Trusted Applications<br />Native Integration<br />Other New Out of Browser Features<br />
  51. 51. Silverlight pour les applications métier<br />Data Validation<br />DataBinding Enhancements<br />Commanding<br />Impression<br />DeepLinking & Search Engine Optimization<br />BindingElement à Element<br />Template de projet VS Silverlight Navigation Application<br />Navigation Framework<br />Frame & Page<br />NavigationService<br />NavigationContext<br />Uri Routing<br />
  52. 52. WCF RIA Services<br />Réduire la complexité de développement des applications RIA n-Tiers (notamment les application LoB)<br />Framework<br />Outils<br />Services<br />Bénéfices<br />Support end-to-end des applications orientées données<br />Unification des composantes clients et serveurs<br />Productivité accrue<br />Intégration avec les classes « DomainService » et « DomainContext »<br />Récupération des données, mise à jour, …<br />Logique de liaison aux données<br />Documentation<br />http://download.microsoft.com/download/F/B/8/FB8CA635-296B-487F-965C-8148F08B5319/riaservicesoverviewpreview.pdf<br />http://code.msdn.microsoft.com/RIAServices<br />
  53. 53. Windows Communication Foundation<br />Programming Model<br />RIA<br />Services<br />Core Services<br />Workflow<br />Services<br />DataServices<br />Web Http Services<br />ServiceModel<br />Data Contract<br />Service Contract<br />Service Behavior<br />ChannelModel<br />Formats<br />(Atom, JSON, XML,…)<br />Transports<br />(HTTP, TCP,…)<br />Protocols<br />(SOAP, HTTP, OData,…)<br />
  54. 54. Silverlight et Windows Azure<br />Windows Azure<br />Plateforme de type « Cloud Computing » de Microsoft<br />Eq Amazon EC2, Google AppEngine<br />Enregistrer le type MIME dans la fabrique<br />Exemples<br />Avec stockage de vidéos: http://blogs.msdn.com/jnak/archive/2008/11/05/silverlight-mediaelement-playing-a-video-stored-in-windows-azure-blob-storage.aspx<br />SilverLining: http://azurecoding.net/blogs/icbtw/archive/2008/11/08/silver-lining-for-windows-azure-silverlight-2-sample-hosted-in-azure.aspx<br />http://www.tekigo.com/Downloads/TEKIGO%20-%20Windows%20Azure%20-%20Présentation%20Technologique.pdf<br />
  55. 55. Et encore…<br />Silverlight pour Mobile<br />http://silverlight.net/learn/mobile.aspx<br />Windows Mobile 7<br />Silverlight sur Linux = Moonlight<br />Projet OpenSource<br />Initié par Miguel de Icaza<br />http://www.mono-project.com/Moonlight<br />
  56. 56. Blend: Outilspour Designers et Développeurs<br />Visual Studio 2010<br />Expression Blend<br />Expression Design<br />Designers<br />Look, identité visuelle, marque,et connection émotionnelle<br />Développeurs<br />Fonctions, déploiement, données,sécurité, intégrité<br />XAML<br />Fichiers Projet VS<br />
  57. 57. Quels bénéfices avec Silverlight ?<br />ZeroDeployment<br />Cross Browser & Cross platform<br />Write once, Test once<br />Limite : Interactions avec le browser<br />Tirer parti de la puissance du client<br />Basé sur un moteur vectoriel graphique 2D<br />La meilleure résolution pour mon application ?<br />Architectures multi-tiers et orientées services<br />Mêmes outils, mêmes langages<br />Visual Studio 2010 offre un designer pour Silverlight 3 & 4 ainsi qu’un éditeur de binding<br />Les DomainSource des WCF RIA Services sont maintenant intégrés aux source de données Visual Studio<br />Mêmes développeurs !<br />
  58. 58. Références<br />Silverlight 4 Overviewfrom PDC<br />http://microsoftpdc.com/Sessions/P09-11<br />Karen Corby - Lead Program Manager Silverlight<br />http://scorbs.com/work/<br />Copy/PasteDemo<br />http://weblogs.asp.net/lduveau/archive/2009/11/21/silverlight-4-clipboard-access.aspx<br />Share Assemblies between SL & .NET<br />http://karlshifflett.wordpress.com/2009/11/19/silverlight-3-4-library-sharing-with-net-4-0-library-or-wpf/<br />Silverlight Spy<br />http://firstfloorsoftware.com/silverlightspy/download-silverlight-spy/<br />PDC09 Talk: Building Amazing Business Applications with Silverlight 4, RIA Services and Visual Studio 2010<br />http://blogs.msdn.com/brada/archive/2009/11/19/pdc09-talk-building-amazing-business-applications-with-silverlight-4-ria-services-and-visual-studio-2010.aspx<br />Tim Heuercomplete guide to SL 4<br />http://timheuer.com/blog/archive/2009/11/18/whats-new-in-silverlight-4-complete-guide-new-features.aspx<br />SL 4 Hands On Labs<br />http://silverlight.net/learn/handsonlabs/<br />
  59. 59. Merci!<br />

×