Monday, February 21, 2011

Difference between Asp.net & Silverlight ?

Microsoft had tough time competing with advanced, media-rich plug-in solutions such as Adobe Flash. Additionally, it is difficult to create Web applications that offer a consistent experience across all supported browsers and platforms by using ASP.NET and AJAX.In 2006, Microsoft began developing a solution to extend into the browser and offer media experiences more robust than competing plug-in solutions.

In 2007 they introduced "SILVERLIGHT" to challenge Adobe Flash.
I will display few differences between Asp.net and silverlight in the below table.


Asp.net

Silverlight

ASP.NET is Microsoft's technology for developing dynamic web application using .NET languages like VB.NET or C#. The code is executed on the web server and the results are sent to the user’s browser. This is comparable to the way a web site would be done with the PHP language.

Silverlight is Microsoft technology for developing Rich Internet Applications. It is a browser plug-in that allows code from .NET languages to be run in the user’s browsers making it easier to develop graphically rich applications without having to constantly go back and forth between the browser and the server. This is comparable to Adobe's Flash technology.

ASP.NET uses AJAX to improve performance in the browser by making post backs and calls between the browser and server asynchronously. ASP.NET AJAX uses new built-in types and controls and JavaScript.

Unlike ASP.NET, the bulk of Silverlight processing occurs on the client machine thus decreasing server resource utilization and improving the Web experience on the client.

There is no concept of “Post back” in Silverlight.

Asp.net is not platform independent.

Silverlight is delivered as a cross-platform and cross-browser plug-in that exposes a programming framework and features that are a subset of the .NET Framework and Windows Presentation Foundation (WPF).

ASP.NET is a server framework for building dynamic web applications. In Asp.net most processing happens from the server side.

Silverlight is a client-side framework geared at providing a rich user experience and/or other capabilities such as video streaming. In Silverlight most processing happens from the client side.

Both ASP.NET and ASP.NET AJAX are heavily dependent upon the ASP.NET page event life cycle, are tightly coupled to the server.

Silverlight is a free plug-in that encompasses a subset of functionality from the .NET Framework and WPF.Silverlight runs in the browser as a "sandbox" - a secure zone installed into the browser that accommodates Silverlight functionality while completely protecting the host platform from any possibly adverse actions performed by Silverlight

Asp.net can be hosted in IIS.

Silverlight can be hosted in IIS & Apache.

ASP.NET is Microsoft's competitor to JSP/JSF and the successor to classic ASP

Silverlight is Microsoft's competitor to Adobe Flash and Flex. Basically, a standalone runtime running inside a browser allowing animation, real-time 2D and vector rendering, etc


Silverlight is not a replacement for Asp.net . Both have different purpose.

1 comment: