This document provides an overview of Silverlight, including what it is, how it compares to other client-side technologies, and why it is important. It discusses Silverlight's benefits over Flash, provides examples of Silverlight applications, and summarizes key features in Silverlight 2.0 like controls, data binding, and communication capabilities. The document concludes with a brief demo of building a Silverlight application.
Flash: 8 million downloads per day (3 billion per year): Source: http://blogs.zdnet.com/Stewart/?p=691 YouTube and MSN Video (as of 2008-01) both use Flash video players and download the videos as *.FLV (Flash video) files.
Similarities to the transition from character-mode DOS to the original 16-bit Windows.
Yahoo Finance’s stock charting page has a beta version that uses Flash. Highly interactive. Nice animation. Pre-Flash version generates the charts on the server and downloads them as PNG files. Pre-Flash problems: Slow to update, wastes network bandwidth and server CPU cycles. http://finance.yahoo.com/charts/#chart1:symbol=adbe;range=my;compare=msft;indicator=split+dividend+volume;charttype=line;crosshair=on;logscale=off;source=undefined
Picnik.com is an online photo-editor application implemented in Flash. The main pages are entirely Flash, no HTML. See: http://www.picnik.com/app
Retained mode graphics system vs. WM_PAINT messages. Specify the shape of an object once and WPF/SL takes care of drawing it from then on. Move whole shape just by changing its origin coordinates. WPF gets hardware acceleration, SL does not. WPF and SL coordinates are floating point values not integers (Win32, WinForms, HTML): WPF coordinates are in double-precision floating point: http://msdn2.microsoft.com/en-us/library/ms742562.aspx SL coordinates are floating point like WPF, but in units of pixels not WPF’s DIPs: Nathan’s SL 1.0 book: p69.
Full released .NET 3.5 redistributable is about 200MB (I test downloaded 2008-01). http://www.microsoft.com/downloads/details.aspx?FamilyID=333325fd-ae52-4e35-b531-508d977d32a6&displaylang=en Full released .NET 3.0 redistributable is about 50MB.
V1.0 is only about 1.5MB in size on Windows. V1.1 alpha is about 4.5MB in size on Windows.
Silverlight Airlines: v1.1 sample implemented with C# code-behind http://silverlight.net/samples/1.1/SilverlightAirlines/Run/default.html
Beta interface to MS Download Center is done with Silverlight 1.0: http://www.microsoft.com/beta/downloads/Default.aspx
Intersoft Solutions – Sirius control set for Silverlight http://sirius.intersoftpt.com/
References: http://weblogs.asp.net/scottgu/archive/2007/11/29/net-web-product-roadmap-asp-net-silverlight-iis7.aspx Partial quote: “ WPF UI Framework : The current Silverlight Alpha release only includes basic controls support and a managed API for UI drawing. The next public Silverlight preview will add support for the higher level features of the WPF UI framework. These include: the extensible control framework model, layout manager support, two-way data-binding support, and control template and skinning support. The WPF UI Framework features in Silverlight will be a compatible subset of the WPF UI Framework features in last week's .NET Framework 3.5 release. Rich Controls : Silverlight will deliver a rich set of controls that make building Rich Internet Applications much easier. The next Silverlight preview release will add support for core form controls (textbox, checkbox, radiobutton, etc), built-in layout management controls (StackPanel, Grid, etc), common functionality controls (TabControl, Slider, ScrollViewer, ProgressBar, etc) and data manipulation controls (DataGrid, etc). Rich Networking Support : Silverlight will deliver rich networking support. The next Silverlight preview release will add support for REST, POX, RSS, and WS* communication. It will also add support for cross domain network access (so that Silverlight clients can access resources and data from any trusted source on the web). Rich Base Class Library Support : Silverlight will include a rich .NET base class library of functionality (collections, IO, generics, threading, globalization, XML, local storage, etc). The next Silverlight preview release will also add built-in support for LINQ to XML and richer HTML DOM API integration.” http://blogs.msdn.com/tims/archive/2007/11/29/silverlight-1-1-is-now-silverlight-2-0.aspx#comments Partial quote: “ In the Silverlight 1.1 Alpha, the UI framework side was pretty limited. Although we had the likes of MediaElement, Path, TextBlock, etc., it was a small fraction of what WPF provides in this regard. We now have a extensible control framework, two-way data binding, templates, styles, all the standard controls (TextBox, ScrollBar, CheckBox, RadioButton etc.), multiple layout containers (Grid, StackPanel, Canvas). In short, if you're familiar with WPF today, you'll be right at home with Silverlight 2.0.”
Most noticable thing missing from current SL 1.0 and 1.1: No pre-built controls! No mention of: TreeControl, Viewbox