What Is Silverlight?
Silverlight is a new Web presentation technology that is created to run on a variety of platforms. It enables the creation of rich, visually stunning and interactive experiences that can run everywhere: within browsers and on multiple devices and desktop operating systems (such as the Apple Macintosh). In consistency with WPF (Windows Presentation Foundation), the presentation technology in Microsoft .NET Framework 3.0 (the Windows programming infrastructure), XAML (eXtensible Application Markup Language) is the foundation of the Silverlight presentation capability.
This white paper will step you through the basics of Silverlight and how you can use the Microsoft stack of tools, including Microsoft Expression Blend, Microsoft Visual Studio 2005, and XAML to build rich graphical sites. First, let’s take a primer on the background leading up to Silverlight and where it stands on the development landscape.
The Evolution of Web Development: Moving to Web.Next
When Tim Berners-Lee at CERN invented the modern Web, it was intended as a system that allowed static documents to be stored and linked on a network-based system. Over the years, innovation grew, with the logical next step being “active” documents that are generated at the time they are requested with time-specific or user-specific information. Technologies such as CGI empowered this. Over time, the ability to generate documents on the Web became paramount, and the technology evolved through CGI, Java, ASP, and then ASP.NET.
ASP.NET provided a milestone in the ability for a developer to develop quality Web applications quickly using a server-development paradigm and best-of-breed tools from the Visual Studio line of products.
A great barrier in Web applications proved to be the user experience, where technical constraints prevented Web applications from delivering the same richness of user experience that a client application with local data would provide.
The XMLHttpRequest object, released by Microsoft as part of Internet Explorer 5 in 2000, became the foundation of Asynchronous JavaScript and XML (AJAX) technology that allowed Web applications to provide a more dynamic response to user input, refreshing small parts of a Web page without requiring a complete reload of content. Innovative solutions built on AJAX, such as Windows Live Local maps, took Web applications a step further in being able to have a client-like user experience.
Silverlight is the next step in evolving the potential user-experience richness in which application developers and designers can present to their clients. It does this by allowing designers to express their creativity and save their work in a format that will work directly on the Web. In the past, a designer would design a Web site and a user experience using tools that provide a rich output, but the developer would have to meet the constraints of the Web platform in being able to deliver them. In the Silverlight model, designers can build their desired user experience and express this as XAML. The XAML can then be incorporated directly by a developer into a Web page using the Silverlight runtime. Thus, the two can work more closely than ever before to provide a rich client user experience.
As XAML is XML, it is text-based, providing a firewall-friendly, easy-to-inspect description of the rich contents. While other technologies—such as Java Applets, ActiveX, and Flash—exist that can be used to deploy richer content than DHTML/CSS/JavaScript, they all send binary content to the browser. This is difficult to audit for security, not to mention difficult to update, as any changes require the entire application to be reinstalled, which is not a user-friendly experience and can lead to stagnation in pages. When Silverlight is used, and a change is needed to the rich content, a new XAML file is generated server-side. The next time the user browses to the page, this XAML is downloaded, and the experience is updated without any reinstallation.
At the heart of Silverlight is the browser-enhancement module that renders XAML and draws the resulting graphics on the browser surface. It is a small download (under 2 MB) that can be installed when the user hits the site containing the Silverlight content. This module exposes the underlying framework of the XAML page to JavaScript developers, so interaction with the content on the page level becomes possible, and thus the developer can, for example, write event handlers, or manipulate the XAML page contents using JavaScript code.
seems to be good
good explanatory note. thanx very much!
seems to be good