.NET Tutorials, Forums, Interview Questions And Answers
Welcome :Guest
Sign In
Win Surprise Gifts!!!

Top 5 Contributors of the Month
Gaurav Pal

Home >> Articles >> Silverlight >> Post New Resource Bookmark and Share   

 Subscribe to Articles

Introduction to Microsoft Silverlight

Posted By:Mohammad Elsheimy       Posted Date: May 14, 2011    Points: 200    Category: Silverlight    URL: http://www.dotnetspark.com  

In this article we'll have a brief introduction to Microsoft Silverlight, see how it fits with other technologies today, and watch it in action. Get ready!

Contents of this article:

  • Contents
  • Overview
  • What is Silverlight
  • Definition
  • Platform Support
  • Rich Interactive Application
  • RIA Stats
  • Why Silverlight
  • Silverlight vs. Flash
  • Silverlight vs. WPF
  • Rich vs. Reach
  • Showcase
  • Deep Zoom
  • Deep Inside
  • Silverlight and XAML
  • Deployment Process
  • Silverlight Architecture
  • Silverlight 5
  • Tooling
  • Microsoft Visual Studio 2010
  • Microsoft Expression Studio 4
  • What's Next
  • Demo
  • Summary


In this article we'll have a brief introduction to Microsoft Silverlight, see how it fits with other technologies today, and watch it in action. Get ready!

What is Silverlight


Silverlight is a Microsoft technology aimed to help developers create rich interactive Web applications with the best user interface features and functionalities. It's available as a plugin for almost all famous browsers available today, and it's used to deliver the next generation media and Web applications.


Figure 1 - Silverlight Logo

When we say rich applications we don't mean those with amazing interfaces and lots of graphics. Indeed, we mean by "rich" those have lots of functionalities not available for standard Web applications. Common examples of rich applications are online document editors and image processors; both are very interactive and offer lots of functionalities that are usually not available for standard Web applications. And that actually what Silverlight is devoted for, its main goal is to allow for developing rich interactive applications for the Web.
Platform Support

Unlike many other Microsoft technologies, Silverlight applications can run everywhere. It's said to be cross-platform, cross-browser, and cross-device. It can run on Windows, Linux, and even Mac, it can run on Internet Explorer, Mozilla Firefox, Google Chrome, and many others, and it also can run on PCs, mobile devices, and handhelds. Really it can run everywhere without any code changes!

One more interesting thing is that Silverlight Web applications can be hosted on any server. You can host your Silverlight application on a Windows, Linux, or Mac server without any additional code changes or configuration.
Rich Interactive Applications

We have been talking about rich interactive applications for a while; now let's see what a rich interactive application really means.

A Rich Interactive/Internet Application (RIA) is a Web application that's very interactive with the user and has lots of functionalities. It's very similar to desktop applications comparing interactivity and features; however, it's a Web application that runs on the browser not the desktop. So we can say that RIA applications have the best functionalities and user interface features of desktop applications and Web applications.


Figure 2 - RIA

Today, there're lots of technologies available for creating RIA applications. The most famous platforms are Adobe Flash, Microsoft Silverlight, and Sun Java. Worth mentioning that every platform of the above mentioned (that includes Silverlight of course) is available through a plugin for the browser, and therefore its runtime must be installed on user's machine in order to be able to run the application.
RIA Stats

Now someone asks: Who wins the race? What's the best RIA platform that one can spend his time and effort to learn?

First of all, let's have a look at the following diagrams that represent penetration rates of Adobe Flash, Microsoft Silverlight, and Sun Java. The first diagram we have comes from http://riastats.com and it shows that Adobe Flash is installed on almost 96% of internet-connected machines. Microsoft Silverlight comes in the second place with about 74% of total internet-connected machines. And Sun Java comes third with about 73% of internet-connected machines.


Figure 3 - RIA Stats

StatOWL shows a bit different data with more details:


Figure 4 - Stats from StatOWL

Looking at the above diagrams we can see that Microsoft Silverlight did a great job in a very short time (first release was on 2007.) However, we can't depend much on this data since, as you know, Microsoft Silverlight is installed automatically on Windows machines via Windows Update.

Now, let's have a look at Microsoft Silverlight features and see what makes it the best RIA platform yet.

Why Silverlight

Other than being delivered by Microsoft, some features of Silverlight are:

  • It's FREE.
  • It runs on all popular browsers, platforms, and devices.
  • It can be run in browser and as a desktop application.
  • Easy to create excellent UIs that looks "WOW".
  • Enables business application development.
  • Supports 2D/3D animations/graphics.
  • Natively supports CLR and .NET Framework.
  • Can be automated using JavaScript.
  • Supports a variety of media (audio/video) formats with streaming capabilities.
  • Supports a variety of rich controls including the DataGrid.
  • Supports a variety of enterprise technologies including WCF.

In addition, Silverlight is considered to be the main development framework for Windows Phone.

Figure 5 - Windows Phone

Silverlight vs. Flash

Silverlight and Flash are very similar, so which is better, Silverlight or Flash? Since I'm a Microsoft developer and since you are reading now in a .NET blog, and although I haven't ever developed for Flash, I can say that Silverlight is the best RIA platform ever!!! However, we need to be more serious.

InfoWorld did a review and compared between Silverlight and Flash, and the results were so great, Silverlight passed Flash and scored 8.3 points, while Flash got 7.8 points only.


Figure 6 - Silverlight vs. Flash, InfoWorld

Silverlight vs. WPF

Windows Presentation Foundation (WPF) is a graphical subsystem utilizing DirectX for rendering UI in Windows-based application, developed by Microsoft and introduced as part of Microsoft .NET Framework 3.0 and Windows Vista. WPF is considered to be the replacement for WinForms (that considered now Feature-Complete,) while WinForms relies on the older GDI subsystem, WPF relies on DirectX.

On the other hand, Silverlight is actually a subset of WPF, and formerly Silverlight was codenamed WPF/E (WPF/Everywhere) because it's considered to be the cross-platform version of WPF. And while WPF focuses on desktop development, Silverlight focuses on Web development.


Figure 7 - Silverlight vs. WPF

Rich vs. Reach

The following diagram compares some of the available Web development technologies in terms of richness (i.e. UI functionalities) and reach (platform and browser support.)


Figure 8 - Rich vs. Reach

From the above diagram we can see that WPF has the best UI features today. However, it's devoted primarily for desktop development, and it can run only on Windows platforms.

On the other hand, ASP.NET can run everywhere, but unfortunately it doesn't support the UI functionalities required for today's Web.

And finally, Silverlight has the best of UI functionalities, and it also supports a wide range of platforms and browsers (its platform/browser support is expanded each release.)

To get a solid understanding of what Silverlight can do, check out some of the Silverlight applications from around the world:

And one of the most impressive applications is SilveOs (http://silveos.com/);  a mini-operating system for the Web.

And thousands of Silverlight applications are available here too: http://www.silverlight.net/showcase. 

Deep Zoom

And another great feature of Silverlight is the DeepZoom technology that was introduced by Microsoft as part of Silverlight. DeepZoom allows you to view very large high resolution images. It reduces the time of initial load by downloading only the region being viewed at the resolution it's displayed at. Subsequent regions are downloaded as the user pans to (or zooms into) them.


Figure 9 - Deep Zoom, Microsoft Silverlight

Deep Inside

Silverlight and XAML

Like WPF, user interface in Silverlight is declared in a specific language called Extensible Markup Language (or XAML, pronounced 'Zammel'.) XAML is an XML-based language created by Microsoft which is used to initialize structured values and objects. XAML elements are mapped directly to CLR objects (e.g. a


No response found. Be the first to respond this post

Post Comment

You must Sign In To post reply
Find More Articles on C#, ASP.Net, Vb.Net, SQL Server and more Here

Hall of Fame    Twitter   Terms of Service    Privacy Policy    Contact Us    Archives   Tell A Friend