What is Silverlight,its features and how it works
Diffrent File Read Operation
What is Silverlight
Microsoft Silverlight is a new technology developed by Microsoft giving users, interactive media experiences, rich business applications and immersive mobile apps. Silverlight works on all major OS's plus all major browsers, including Firefox, Google Chrome, Safari, and off course, Internet Explorer.
For Developers, Microsoft Silverlight is a very powerful tool for creating and delivering rich Internet applications and media experiences on the Web. Silverlight 5 builds on the foundation of Silverlight 4 for building business applications and premium media experiences. Silverlight 5 introduces more than 40 new features, including dramatic video quality and performance improvements as well as features that improve developer productivity
Similarity between WPF & Silverlight
Desktop developers without much expertise in Web applications have always felt that web development are out of reach for them, but with the environment presented by Silverlight, development is made quite easy. Since Silverlight is based on WPF, any web developer who learns to program applications with Silverlight can easily switch to writing Windows applications in Windows Presentation Foundation (WPF).
- In WPF the display elements are defined in an XML based language called XAML. There are powerful data binding techniques in Silverlight that allow data to be displayed with minimal code.
The following is an example of a Silverlight canvas defined in XAML:
<UserControl
xmlns="https://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="https://schemas.microsoft.com/winfx/2006/xaml"
x:Class="FirstLookXaml.MainPage"
Width="640" Height="480">
<Canvas x:Name="LayoutRoot" Background="White">
<Rectangle Height="119" Canvas.Left="75" Stroke="Black"
Canvas.Top="92" Width="183"/>
<Ellipse Height="119" Canvas.Left="347" Stroke="Black"
Canvas.Top="92" Width="189"/>
<Button Content="XAML Rocks!" Height="43" Canvas.Left="233"
Canvas.Top="285" Width="161"/>
</Canvas>
</UserControl>
Another remarkable feature of Silverlight is that it includes a smaller version of the CLR. It also includes a complete set of core classes, a just-in-time compiler, support for threading, generics, etc. This gives developers great flexibility in reusing their code completely written in .NET CLR, into Silverlight without substantial changes.
- Moreover .net developers find it difficult to develop a flash site, particularly, in a completely new design tool and completely different programming environment; ex: flex. Hence, Silverlight is the best solution for such type of developers.
Following is the architectural view of Framework:
What does Silverlight plug-in contains?
For Silverlight, Microsoft has developed a Plug-In which can be called as Light .NET CLR. This can be installed on the browser (currently it can be installed on Internet Explorer, Firefox, Chrome). The Plug-in is nothing but a stripped of version of the FAT .NET CLR. You can make use of almost all basic data types as well as many controls and functionalities which are present in .NET CLR.
Features Of Silverlight:
For Users
Silverlight enables you to create a state-of-the-art application that can have the following features:
o It is a cross-browser, cross-platform technology. It runs in all popular Web browsers, including Microsoft Internet Explorer, Mozilla Firefox, and Apple Safari, and on Microsoft Windows and Apple Mac OS X.
o It provides a consistent experience no matter where it runs.
o It is supported by a very small download that installs in seconds.
o It streams video and audio. It scales video quality to everything from mobile devices to desktop browsers to 720p HDTV video modes.
o It includes compelling graphics that users can manipulate-drag, turn, and zoom-directly in the browser.
o It reads data and updates the display, but it doesn't interrupt the user by refreshing the whole page.
For developers
Silverlight combines multiple technologies into a single development platform that enables you to select the right tools and the right programming language for your needs. Silverlight offers the following features:
WPF and XAML. Silverlight includes a subset of the Windows Presentation Foundation (WPF) technology, which greatly extends the elements in the browser for creating UI. WPF lets you create immersive graphics, animation, media, and other rich client features, extending browser-based UI beyond what is available with HTML alone. Extensible Application Markup Language (XAML) provides declarative markup syntax for creating elements. Example includes the extensible control framework model, layout manager support, two-way data-binding support, Control template and skinning support.
Extensions to JavaScript. Silverlight provides extensions to the universal browser scripting language that provide control over the browser UI, including the ability to work with WPF elements.
Cross-browser, cross-platform support. Silverlight runs the same on all popular browsers (on any platform). You can design and develop your application without having to worry about which browser or platform your users have.
Integration with existing applications. Silverlight integrates seamlessly with your existing JavaScript and ASP.NET AJAX code to complement functionality you have already created. You can create server-based resources in ASP.NET and use the AJAX capabilities of ASP.NET to interact with server-based resources ad use Silverlight for high graphical user interface.
Access to the .NET Framework programming model and associated tools. You can create Silverlight-based applications using dynamic languages such as Iron Python as well as languages such as C# and Visual Basic. You can use development tools such as Visual Studio to create Silverlight-based applications.Silverlight includes a rich .NET base class library of functionality (collections, IO, generics, threading, globalization, XML, local storage, etc). It also adds built-in support for LINQ to XML and richer HTML DOM API integration.”
Networking support. Silverlight includes support for HTTP over TCP. You can connect to WCF, SOAP, or ASP.NET AJAX services and receive XML, JSON, or RSS data.
Bandwidth Overhead: Downloading the XAP file can sometimes be painfully slow, depending on your bandwidth, but once it's downloaded it's also coached by the user's browser. Everything that happens after that consumes very little bandwidth. There is no CSS, no HTML markup, no javascript; the only thing that goes over the wire is the data that you actually need. And with Silverlight's Binary XML feature you're also using less bandwidth than before. This is a very important consideration since bandwidth has a huge impact on the client-side responsiveness as well as your server-side ability to process requests.
Stateful Client: We don't have to deal with things like ViewState or SessionState or anything like that. If a client has retrieved a set of data, it will be kept in memory. This is especially useful for things like user-profiles, or static data that never changes. You can simply keep whatever data you need in memory, and it has no impact on the server at all. Well, it actually reduces the amount of data that you need to send to the server (or receive), and the number of requests you need the server to handle to implement the functionality you need client-side. This is beneficial for both the client and the server whereas with typical ASP.NET development, either the client or the server has to take overhead when it comes to maintaining state (even if it's only a little).
What’s Ahead for Silverlight?
The greatest competitor of Silverlight is Adobe Flash. At the moment Flash has the edge over Silverlight, due to its extensive and rapid adoption, and large support community. Moreover, it has gradually evolved to a dynamic and impressive programming tool that has captured the attention of many developers. However, over the years, with new and new addition of features into Silverlight, it will easily surpass the programming capabilities of flash.
Microsoft has palpable long-term experience and it has been the sole player in the market of web-based applications. For instance, Windows messenger that started small and eventually gained wide adoption. Other ActiveX plug-ins and Microsoft XBOX games are also examples. This is one major reason why Silverlight is such a promising technology. For many developers who program in .NET, Silverlight is a comfortable and powerful technology that assures excellent graphic creation
Silverlight is by no means perfect and there is plenty of room for improvement. That's normal though for such a young platform. In the future we'll see plenty of new libraries and tools that will become available to Silverlight developers which should enable us to create even better web applications.
Silverlight is not the perfect solution for every web application. SEO is still a problem, as well as acceptance of the Silverlight plug-in in corporate environments (though this will only improve over time). But, for many business applications, it certainly pays off to use Silverlight.
Note: Images used on this website
are either a production of Bhaktivedanta Book Trust(https://www.krishna.com), Iskcon
Foundation or were found in google search under "Free to use and share". If any
of the images presented here violates copyright issues or infringes anyone copyright
or are not under "Fair use", then please bring it to our notice. Read
Disclaimer for more.
Share this to your friends. One of your friend is
waiting for your share.
Related Articles
How Silverlight works internally
Silverlight New features & system requirement
JQuery FAQ and Jquery Effects
What is Silverlight,its features and how it works
Jquery features, Advantages and disadvantages
How AJAX Works, advantages and disadvantages
Calling silverlight methods from javascript
Easiest Way of logging in .Net
Working with forms-Jquery form selector
Working with canvas in silverlight
Post Comment