Nice article which I found on dotnetslackers.com explaining the basics of Silverlight and its usage. Check it out here:
Silverlight is Microsoft’s new Flash Killer but it will be so much more! Learn all about the present and future features of Microsoft’s new web front end.
What is Silverlight?
Silverlight is a browser plug-in that that extends the web development experience far beyond the limitations of plain
Silverlight is a client side technology, it doesn’t matter what backend server software or platform you’re running – even Apache/Linux will do just fine.
Silverlight version 1.0 – scheduled for release this summer – is very comparable to Adobe Flash. It delivers high performance multimedia and animation capabilities that can blend seamlessly with HTML. It’s capable of playing a variety of audio and video file formats, such as MP3, WMA, and WMV. It handles streaming quite well, so media can start playing immediately without having to wait for the entire file to download.
Silverlight’s user interface is defined with a subset of XAML – an XML format shared with Windows Presentation Foundation (WPF). This facilitates vector based animations, a claim that goes beyond Flash’s current capabilities. Silverlight’s compiled object model can be navigated via
Silverlight components and the page that hosts them.
When users encounter a
Silverlight 1.0 enhanced web page for the first time, they’ll be prompted with the quick & easy installation that’s only about a 1.2 megabyte download.
You can download the beta version of Silverlight 1.0 now.
While the multimedia and animation capabilities of
Silverlight 1.0 are certainly great for graphic designers,
Silverlight version 1.1 (currently in alpha) starts to provide the kind of business oriented functionality that the majority of web developers need.
Probably the most exciting feature of version 1.1 is the built-in cross platform subset of the
.NET Framework. While you can still mix in as much (or as little)
.NET code within IE, Firefox, or Safari. Those developers who hate
VB.NET, or any other
.NET language. This
.NET code can interact with the browser’s object model so it can manipulate the page’s
HTML in addition to interacting with any
Silverlight user interface that may be embedded in the page. You’ll now be able to replace slow performing
A variety of useful classes are included in
Silverlight 1.1 for working with cutting edge technologies like LINQ,
invocation of Windows Communication Foundation (WCF) web services. There’s also support for XML manipulation, networking, I/O, collections, globalization, and
ASP.NET support is also provided for things like personalization, profiles, role membership, and invocation of ASMX web services. On a related note, the next release of ASP.NET is expected to include a variety of tools for easing
Silverlight development, including built-in controls that make it easy to embed
Unfortunately there are currently no definite plans to include any significant number of controls in
Silverlight 1.1 – not even a basic
button control is currently in the mix. They do at least provide a control class that can be used to build your own controls, and alternately it’s not terribly difficult to make basic controls using
XAML and some custom code – but certainly we’d prefer not to have to write such basic code. Luckily there are several controls available in the separate Silverlight 1.1 Alpha SDK download.
Silverlight 1.1 is still only in alpha, its uncertain exactly what other functionality may ultimately make it into the release version. The current download size for this far more functional version of
Silverlight hovers at around 4MB.
From my conversations with
Silverlight mastermind Scott Guthrie and his merry band of genius underlings, they’ve got a lot of mouthwatering functionality planned for upcoming versions of
Silverlight. General themes include a rich set of built-in controls, data binding support,
XLINQ, RSS, Xml Serialization, Opera support, and improved layout management. And that’s just for starters.
In general the vision is to transform
Silverlight from its current 1.0 state of multimedia powerhouse into a highly productive business tool capable of powering rich applications of virtually every kind.
Even with all this extra functionality, Silverlight’s team has a long term secret goal of keeping the download size under 5MB. Shhhh! Don’t tell anybody!
Currently the lack of polished tools for developing
Silverlight applications is its biggest hindrance. The next version of Visual Studio (codenamed Orcas) is expected to ship with rich
Silverlight support. However, the current beta version of
Orcas clearly still needs a lot of work before achieving this goal. If you’re brave enough to be tinkering with the Orcas beta then you might as well download the Silverlight Tools Alpha add-on to try out its
Silverlight development capabilities.
Microsoft’s new Expression suite of products is currently closer to being in a finished state. They are presently more polished and less buggy than
Orcas. Specifically, Expression Blend is probably the most valuable Expression product for
Silverlight development. However, be forewarned that the Expression suite is intended more for graphic designers than software developers. Therefore Visual Studio-oriented developers should expect a significant learning curve.
Silverlight is a brilliant idea that still has a ways to go before it reaches its potential. Nevertheless, it should definitely be on every web developer’s radar. It’s a distinct possibility that
Silverlight could be the future of web development. Imagine a world where web developers no longer deal with HTML, and instead write rich, compiled .NET code that runs everywhere as ubiquitously as
HTML does now. If Microsoft plays its cards right, this will happen.