Thursday, January 22, 2009

Introduction to Silverlight

Here is my introduction to one of Microsoft's most successful products - Silverlight !

To start off  - Silverlight is a new browser-based plug-in for delivering richer interactive applications(RIA's) to users over the web developed by Microsoft. So we can develop independent applications which can be later plugged into our browsers. Silverlight 2 is the second release of Silverlight. Silverlight 2's biggest change from Silverlight 1.0 is the inclusion of a compact version of the .NET Framework, complete with the .NET Framework 3.0 Common Language This is really useful for .NET developers to work with their existing knowledge and come up with some rich web applications. Also Silverlight gives them the ease to work together with the designers. Thus the work gets even easier !!!

For all you wondering where Silverlight can be integrated, here is an answer. Silverlight will integrate with your existing applications, from IIS and .NET to Apache and PHP to simple JavaScript and XHTML on the client. Thus friends this calls for a broader adoption of Silverlight and not restricting it to only ASP.NET web sites. This is what I feel makes it a big success story.

So lets see what are Rich Internet Applications.

Rich Internet Applications, or RIAs, are web applications. RIAs typically transfer the processing necessary for the user interface to the web client but keep the bulk of the data processing on the application server.

Normally we see client/server architecture where a thin client interacts with a server doing bulk of the work. All processing is done on the server and the client is used only to display static HTML content. When we use this, the data must be sent to the server, the server must respond, and then the page must be reloaded on the client with the server's response. Thus, if the client can do some processing we can avoid this wastage.

Now lets see some technologies that use RIA's :

Microsoft Silverlight

Adobe Flash Player and Adobe Flex

Ajax frameworks

Adobe AIR


Google Gears

Another important note is that Silverlight is build on WPF(Windows Presentation Foundation), which is the next generation of UI technology. The system is vector-based and uses XML . The main focus of WPF is in vector graphics, but pixelated graphics are supported as well. WPF also supports multimedia content both in audio and video. One of the main features is the support for text, which includes some typographical specialties.

Forbes newsreader can be seen to study text flow in WPF. Also, the next version of Yahoo! Messenger will feature a WPF interface.

XAML is the UI markup used in WPF applications. Microsoft provides several tools for developing XAML content. You can use Visual Studio or Expression Blend. There is also XAMLPad that can be used to develop XAML content.

So, this is all about Silverlight !!! Covered it all !

 Actually, this is what you need to know before starting to work on Silverlight. You can now start developing applications using Silverlight. Get started here.

Start playing with Silverlight and you will enjoy the difference !!!