About Silverlight 2
It is very rare that a technology comes along that excites both web developers and desktop developers; both developers and designers; both people targeting Windows and the Apple Mac. Silverlight 2 breaks all those barriers. It is a browser plug-in technology for developing cross-browser (e.g. IE 6.0, FireFox 1.5, Safari 2.0.4), cross-platform (e.g. Windows 2000, Mac OS 10.5.2) rich web applications using a compatible subset of the .NET Framework. All you need as a developer is a copy of Visual Studio 2008 plus the
Silverlight Tools for Beta 1. I have a detailed
"Hello World" walkthrough on my blog.
To see an example of what we mean by "rich" I invite you to check out the public web site of
Hard Rock Memorabilia. If you prefer playing games, check out
this on miniclip. If you just want a simple Silverlight app for kids,
introduce them to scribbler. Finally, for a mock up example of what a business application might look like, visit
Woodgrove Online Bank. TIP: It is easy to tell which part of a website is built using Silverlight because when you right click you'll see the Silverlight menu and nothing else.
Notice that in the latter two examples the Silverlight application occupies the entire web page (aka full page app) whereas in the former two examples it is just part of a page (aka island of richness). As you may have guessed, there is extensive support for communicating between the Silverlight app (from managed code) and the rest of the page (in html and script). The API for that lives in
System.Windows.Browser.dll and we refer to it as the
HTML Bridge.
After interacting with the apps above, it should be apparent that the user does not need to refresh the page and there are no postbacks: the Silverlight app is running sandboxed client side executing .NET code in the browser. So, any data you need to retrieve for your Silverlight app must come via some networking calls (e.g. SOAP, REST, POX, raw sockets) and
Silverlight has full support for consuming all kinds of services.
Whilst your app cannot directly access resources on the client machine, the user may opt to pass them in via a
safe OpenFileDialog class. Additionally, your app can save volatile data
via the IsolatedStorage mechanism.
When working with Visual Studio to develop rich Silverlight apps you'll soon realise that you need more than your developer skills. This is where your designer friends come into the picture. They can open your projects in a tool called
Expression Blend. The important files that are shared between designers and developers are the XAML files that describe the user interface in a declarative XML language. This entire paragraph should sound familiar, as it applies equally for building rich
desktop applications with WPF.
Delegates to the MSDN Roadshow will get to see all of the above live in my session. For the rest of you, in addition to the links above, there are many resources at
Silverlight.net.
Daniel Moth
Read Daniel's blog