Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

CLaueR - AFUP PHP et Silverlight

3,125 views

Published on

Published in: Technology
  • Be the first to comment

CLaueR - AFUP PHP et Silverlight

  1. 1. Applications PHP et Silverlight Pierre Lagarde blogs.msdn.com/pierlag Christophe Lauer blogs.msdn.com/clauer +
  2. 2. <ul><li>Rich Interactive Applications </li></ul><ul><ul><li>Large audience via déploiement Web </li></ul></ul><ul><ul><ul><li>Windows, MacOS X, Linux via Moonlight* </li></ul></ul></ul><ul><ul><ul><li>IE, Firefox, Safari, Konqueror* </li></ul></ul></ul><ul><ul><li>Sandboxing garantit la sécurité </li></ul></ul><ul><li>Productif sur design et développement </li></ul><ul><ul><li>Capitalisation technique (XAML & .NET) </li></ul></ul><ul><ul><li>Meilleur outillage de l’industrie </li></ul></ul><ul><ul><li>Design et développement séparés </li></ul></ul>
  3. 3. Exemples d’applications Silverlight 1.0 et Silverlight 2
  4. 4. <ul><li>Compatibilité ascendante de 1.0 vers Silverlight 2 </li></ul><ul><li>La V2 ajoute .NET à la version V1.0 de Silverlight </li></ul>Silverlight 2 Silverlight 1.0
  5. 6. Silverlight 1.0 Silverlight 2 Enrichissement de sites existants (Media, Vectoriel, Intéractions) Applications type « RIA » *et* médias riches Animations, Medias, Transformations, Vectoriel, Events, etc… Layout, Contrôles, User Controls, LINQ, DataBinding, Isolated Storage, etc… Développeurs Web et Ajax Aussi et surtout les développeurs d’applications (Web & Windows) Modèle de développement à la Ajax : Javascript, XAML et DOM Modèle de développement full .NET : C#, compilation et DLR, Assemblies Version finalisée, supportée et déployable Version Bêta 1, pas encore Go-Live!
  6. 7. Réaliser un “Hello world” en Silverlight avec JavaScript
  7. 8. Réaliser un Player Vidéo rudimentaire
  8. 9. <ul><li>Zéro Déploiement </li></ul><ul><li>Cross Navigateur et Cross plate-forme </li></ul><ul><li>Write once, Test once </li></ul><ul><li>Tirer parti de la puissance du client </li></ul><ul><li>Basé sur un moteur vectoriel graphique 2D </li></ul><ul><ul><li>La meilleure résolution pour mon application ? </li></ul></ul><ul><li>OK pour les archis multi-tiers et orientées services </li></ul><ul><li>Pour les développeurs qui connaissent .NET : </li></ul><ul><ul><li>Mêmes outils, mêmes langages </li></ul></ul><ul><ul><li>Mêmes développeurs </li></ul></ul>
  9. 10. <ul><li>MacOS X 10.4+ </li></ul><ul><ul><li>Silverlight 1.0 supporte tous hardwares </li></ul></ul><ul><ul><li>Silverlight 2 supporte Mac Intel seulement </li></ul></ul><ul><ul><li>Mac entièrement supporté par Microsoft </li></ul></ul><ul><li>Distros Linux majeures </li></ul><ul><ul><li>Runtime Moonlight implémenté par Mono </li></ul></ul><ul><ul><li>Accord de coopération avec Microsoft </li></ul></ul><ul><ul><ul><li>Accès à la documentation et aux tests unitaires </li></ul></ul></ul><ul><ul><ul><li>Couverture légale des utilisateurs Mono </li></ul></ul></ul>
  10. 11. <ul><li>Accord de collaboration technologique avec Novell </li></ul><ul><li>Voici le projet Moonlight  : </li></ul>
  11. 12. Moonlight… ou presque ;)
  12. 13. <ul><li>@ </li></ul>Database Layer Integration Layer Business Logic Layer Presentation Layer PHP ASP.NET Service Layer SOAP, JSON, REST, … Client Layer (Browser) HTML Ajax Silverlight
  13. 14. Utiliser des services PHP en Silverlight
  14. 15. <ul><li>Silverlight 2 Bêta 1 étend le networking </li></ul><ul><ul><li>HTTP, WS*/SOAP, REST, RSS, JSON </li></ul></ul><ul><ul><li>System.Net.Sockets pour les protocole non-HTTP tels que les serveurs de “chat” </li></ul></ul><ul><li>Support des requêtes “Cross domain” </li></ul><ul><ul><li>crossdomain.xml & clientaccesspolicy.xml </li></ul></ul>
  15. 16. <ul><li>Silverlight looks for two policy files: </li></ul><ul><ul><li>Silverlight policy: clientaccesspolicy.xml </li></ul></ul><ul><ul><li>Adobe Flash policy: crossdomain.xml </li></ul></ul><ul><ul><li>Already used by etc… </li></ul></ul><ul><li>All public services that work with Flash – will also work with Silverlight </li></ul>
  16. 17. <ul><ul><li>Les designers et les développeurs sont différents </li></ul></ul>
  17. 18. <ul><ul><li>Developers work from the inside outward </li></ul></ul>
  18. 19. <ul><ul><li>Silverlight 2 Bêta 1 </li></ul></ul><ul><li>Notepad ? </li></ul><ul><ul><li>Pas de SDK requis, tout est du texte </li></ul></ul><ul><li>On peut faire mieux… </li></ul><ul><ul><li>Silverlight Tools for Visual Studio 2008 </li></ul></ul><ul><ul><li>Expression Blend 2.5 March Preview (Bêta) </li></ul></ul><ul><li>Tout le reste est disponible en ligne </li></ul><ul><ul><li>http://www.silverlight.net </li></ul></ul>
  19. 20. Whether you are designing rich standards-based websites, ultimate experiences on the desktop, or managing digital assets and content, Expression professional design tools give you the flexibility and freedom to bring your vision to reality. The professional Web design tool The professional Interactive design tool The professional Graphic design tool The professional Asset Management tool
  20. 21. Visual Studio 2008 Expression Blend Expression Design XAML Designers Look, identité visuelle, marque, et connection émotionnelle Développeurs Fonctions, déploiement, données, sécurité, intégrité Fichiers Projet VS
  21. 22. <ul><li>eXtensible Application Markup Language </li></ul><ul><ul><li>Langage déclaratif </li></ul></ul><ul><ul><li>Les outils de développement riches produisent du contenu Texte et XML </li></ul></ul><ul><ul><ul><li>Les pages Silverlight peuvent être indexées </li></ul></ul></ul>
  22. 23. <ul><li><Rectangle /> </li></ul><ul><li><Ellipse /> </li></ul><ul><li><Line /> </li></ul><ul><li><Polygon /> </li></ul><ul><li><PolyLine /> </li></ul><ul><li><Path /> </li></ul>
  23. 24. XAML 101
  24. 25. <ul><li>2D, Graphics </li></ul><ul><li>Audio, Vidéo et HD </li></ul><ul><li>Animations </li></ul><ul><li>Texte, Text Input* </li></ul><ul><li>Contrôles* </li></ul><ul><li>Layout* </li></ul><ul><li>Styles/Templates* </li></ul><ul><li>Data Binding* </li></ul><ul><li>Networking </li></ul><ul><ul><li>HTTP/S et Sockets* </li></ul></ul>* Nouveau dans Silverlight 2 <ul><li>Support .NET* </li></ul><ul><ul><li>C# et VB.NET* </li></ul></ul><ul><li>LINQ* </li></ul><ul><li>XML APIs* </li></ul><ul><li>Generics* </li></ul><ul><li>Intégration HTML* </li></ul><ul><ul><li>JSON Serializer </li></ul></ul><ul><li>Local Storage* </li></ul><ul><li>Crypto APIs (AES)* </li></ul><ul><li>Threading* </li></ul>
  25. 26. <ul><li>Eléments de UI composables et réutilisables </li></ul><ul><ul><li>Silverlight 2 ajoute 20+ contrôles à la toolbox </li></ul></ul>
  26. 28. <ul><li>Silverlight = XAML = UI flexible </li></ul><ul><li>Customiser le look d’une application sans altérer son comportement </li></ul><ul><ul><li>Styling (Styles) Changements visuels légers sur un Elément (Fonte, Couleur de fond, etc) </li></ul></ul><ul><ul><li>Skinning (Control Templates) Remplacer tout l’arbre visuel d’un Elément </li></ul></ul>
  27. 31. <ul><li>Le Databinding renforce la séparation entre la présentation des données et le code-behind “applicatif” </li></ul><ul><ul><li>Avec tout object implémentant IEnumerable </li></ul></ul><ul><ul><ul><li>Arrays, Lists, Collections </li></ul></ul></ul><ul><ul><li>DataTemplates contrôlent la présentation </li></ul></ul><ul><li>Binding uni- ou bi-directionnel </li></ul>
  28. 32. Contrôles Silverlight 2 et Binding
  29. 33. <ul><li>La « Board » Melty </li></ul><ul><li>Alexandre Malsch </li></ul>
  30. 34. ? ? ? ? Pierre Lagarde - Christophe Lauer (Microsoft) Alexandre Malsch (eeple)
  31. 35. Silverlight – Get Started http://silverlight.net/GetStarted Scott Guthrie’s blog – VP for Silverlight and .NET http://weblogs.asp.net/scottgu/ Where to find these slides http://blogs.msdn.com/clauer Moonlight –Silverlight support on Linux http://www.mono-project.com/Moonlight
  32. 38. <ul><li>Language INtegrated Query apporte des capacités de requêtage natives à .NET </li></ul><ul><ul><li>Requêter, projeter et filtrer des données issues de multiples sources </li></ul></ul><ul><ul><li>Mixé avec le code C#, VB, etc </li></ul></ul><ul><li>Silverlight 2 comprend System.LINQ et System.LINQ.Expression </li></ul>
  33. 39. Aller plus loin
  34. 40. <ul><li>Mécanismes de customisation en XAML </li></ul><ul><ul><li>Brushes </li></ul></ul><ul><ul><ul><li>Solid, gradient, image, video </li></ul></ul></ul><ul><ul><li>Transformations </li></ul></ul><ul><ul><ul><li>Rotate, scale, skew, translate </li></ul></ul></ul><ul><li>Les contrôles utilisateur peuvent exposer des propriétés et évènements “custom” </li></ul>
  35. 41. Extras
  36. 42. <ul><li>Silverlight permet la manipulation du DOM HTML et l’intégration JavaScript </li></ul><ul><ul><li>Propose des “managed wrappers” pour le DOM et les éléments JS </li></ul></ul><ul><ul><li>Silverlight peut invoquer JS, JS peut invoquer du code managé </li></ul></ul>
  37. 43. <ul><li>Silverlight peut prompter pour accéder à des fichiers locaux </li></ul><ul><ul><li>Pas besoin d’upload vers le serveur </li></ul></ul><ul><li>Contraintes de sécurité </li></ul><ul><ul><li>Fichiers ouverts en mode read-only seulement </li></ul></ul><ul><ul><li>Accès en écriture dans le Isolated storage </li></ul></ul>
  38. 45. Au delà de Silverlight
  39. 46. <ul><li>Addressing entities and sets </li></ul><ul><li>Presentation options </li></ul>Entity-set /Bookmarks Single entity /Bookmarks(123) Member access /Bookmarks(123)/Name Link traversal /Bookmarks(123)/Tags Deep access /Bookmarks(123)/Tags('abc')/Name Raw value access /Bookmarks(123)/Names/$value Sorting /Bookmarks?$orderby=Name Filtering /Bookmarks?$filter=Created gt '2007-05-07' Paging /Bookmarks?$top=10&$skip=30 Inline expansion /Bookmarks?$expand=Tags
  40. 47. <ul><li>Create services directly from Visual Studio </li></ul><ul><li>Various data sources </li></ul><ul><ul><li>Entity Framework </li></ul></ul><ul><ul><li>LINQ providers </li></ul></ul><ul><li>Model-driven </li></ul><ul><ul><li>Structural description in Entity Data Model </li></ul></ul><ul><ul><li>Metadata shapes service </li></ul></ul>Data Access Layer Entity Framework Custom LINQ provider Relational database Other sources Service Runtime Hosting/HTTP listener HTTP IQueryable [+ IUpdatable]
  41. 48. <ul><li>Scales without Limits </li></ul><ul><li>S torage and processing scales without restrictions </li></ul><ul><li>Businesses pay only for the resources consumed </li></ul><ul><li>Application Agility </li></ul><ul><li>Simple, flexible data model </li></ul><ul><li>REST and SOAP protocols support </li></ul><ul><li>Business Ready SLA </li></ul><ul><li>Built using robust Microsoft SQL Server technology </li></ul><ul><li>SLA for business continuity </li></ul><ul><li>Highly available, reliable and secure </li></ul>Microsoft ® SQL Server ® Data Services (SSDS) is a Web facing data storage and processing utility
  42. 49. Deep Zoom
  43. 50. http://silverlight.live.com Hébergement scalable, “on demand” pour les applications Silverlight
  44. 51. Blend Encoder Remote Silverlight Control & Video Embedded in HTML Local Silverlight Control loads Remote Video Silverlight Application Embedded in HTML as <iframe> Windows HTA Application Silverlight Application Silverlight Video Asset (VC-1) http://silverlight.live.com
  45. 54. Silverlight 1.0 for mobile CTP Q2CY08 Visit http://www.silverlight.net for more details Silverlight 2 for Mobile Q2 CY 09 Silverlight 2 for mobile CTP Q4 CY 08 Silverlight 1.0 for mobile RTW Q4CY 08

×