1. Silverlight for Developers Presented by Lynn Langit MSDN Developer Evangelist http://blogs.msdn.com/SoCalDevGal
2. What is Silverlight? cross-browser cross-platform implementation of .NET for building and delivering the next generation of media experiences & rich interactive applications for the Web
5. Who uses Silverlight? Content Providers Engage visitors with highest quality interactive web sites, video and game experiences with lower costs Designers / Developers Role-specific suite of tools for designers and developers using existing skills and domain knowledge and building on existing application investments Viewers / End Users Sites “light up” equally on Windows and Mac, with a one-time, fast install (~2MB)
7. Why Silverlight? Compelling, Cross-Platform User Experiences Flexible Programming Model with Collaboration Tools Low Cost, High Quality Media Connected to Data, Servers, and Services Low Cost, High Quality Media
8.
9.
10. The professional Web design tool The professional Interactive design tool The professional Graphic design tool The professional Asset Management tool
11.
12. Why Silverlight? Compelling, Cross-Platform User Experiences Flexible Programming Model with Collaboration Tools Low Cost, High Quality Media Connected to Data, Servers, and Services
13. Rich Internet Applications Web desktop Easy to develop and deploy, but limited features and end user experience Rich user experience, often connected, but costly to develop and difficult to deploy Web desktop media & RIA
14. Why Silverlight? Compelling, Cross-Platform User Experiences Flexible Programming Model with Collaboration Tools Low Cost, High Quality Media Connected to Data, Servers, and Services
15. Easily reuse skills Media & RIA Desktop Web XHTML / ASP.NET JavaScript / AJAX CSS .NET Languages XAML / WPF Windows Media Flexible tools / programming / media Compelling UX on all app categories Connected to data, servers, services
16. Why Silverlight? Compelling, Cross-Platform User Experiences Flexible Programming Model with Collaboration Tools Low Cost, High Quality Media Connected to Data, Servers, and Services
17. Silverlight Developer Considerations XAML authoring – build or buy controls Rich media preparation – capture and processing Silverlight 1.0 or 2.0? Rich media hosting – streaming location
18.
19. The Silverlight 1.0 Platform Browser Host MS AJAX Library DOM Integration Deploy Friction-Free Installer Auto- Updater Application Services XAML Networking JSON POX Inputs Keyboard Mouse Ink Media VC1 WMA MP3 UI Core Images Vector Text Animation
20.
21.
22.
23. The Silverlight 2.0 Platform Browser Host MS AJAX Library DOM Integration Deploy Friction-Free Installer Auto- Updater Application Services CLR Execution Engine SOAP RSS REST Legend V2.0 Legend V1.0 Inputs Keyboard Mouse Ink Media VC1 WMA MP3 UI Core Images Vector Text Animation DRM Media Controls Layout Editing JSON POX Networking Data LINQ XLINQ WPF Extensible Controls XAML DLR Ruby Python BCL Generics Collections
24. Key Feature Comparison: 1.0 vs. 2.0 Markup Language XAML XAML Hosting/Container HTML Page HTML Page Delivery Method Arbitrary Web server Arbitrary Web server Silverlight 1.0 Silverlight 2.0 Alpha Options for Development of Event Handlers and Application Logic JavaScript JavaScript, Managed code languages (C#, VB.Net), Dynamic languages targetting managed code (IronPython, Managed Jscript) Application/Interaction Logic Packaging JavaScript Files/Embedded JavaScript Managed Assemblies (DLL), JavaScript Files/Embedded JavaScript Possible (not final) Release Timeframe (Official Support) Summer ´07 Spring ´08 Available Libraries/Library Support No special Silverlight JavaScript Libraries available. Standard AJAX libraries can be used .Net libraries for IO, Threading, Networking (incl. Web Services), Collections, Generics, LINQ are available and it supports the use of standard AJAX libraries Managed DOM API (Access HTML Elements from managed Code) N/A Yes High-Level Controls No (Ajax Only) Sample Control Kit (Button, Listbox, etc.) JavaScript/.NET Interaction N/A Yes Automatic Marshalling of .NET Types Into JSON N/A Yes Dynamic Language Support No Yes (Python, Ruby, Managed JavaScript, Dynamic VB) Plug-In Size ~1,2 MB ~4,2 MB Installation Time ~15 Seconds ~20 Seconds Code Execution Pattern Interpreted (JavaScript) Native (JIT Compilation, Managed Code) Much faster