basis. The chapter also explained how to package an application into a CAB file and then into a MSI package so that you can distribute it to your users easily.
Chapter 19
Developing Silverlight Applications
Over the years, we have all seen the proliferation of web applications. In the early days, web sites consisted of sets of static HTML pages with nice graphics and lots of information. Then, server- side technologies like CGI, ASP, and JSP made web applications possible, and suddenly users could do a lot of things on the web, including buying products and making reservations online. Client-side innovations such as JavaScript helped improve the user experience of web applications, making them feel much more responsive. Although AJAX's underlying technologies had been available for several years, it wasn't really until the last couple of years that people really started spending more time AJAX-enabling their web applications. All this boils down to one important goal of web developers — making web applications much more interactive and responsive.
Today, a new term has been coined: RIA — Rich Internet Application. To Microsoft, RIA really stands for Rich Interactive Application. And it was with that in mind that Microsoft recently launched a new technology/product called Silverlight. Previously known as Windows Presentation Foundation/Everywhere (WPF/E), Microsoft Silverlight is a browser plug- in that enables developers to host RIAs that feature animation and vector graphics, as well as video playback.
This chapter will help you get started with Silverlight and provides an opportunity for you to get a feel for how Silverlight development works.
The State of Silverlight
At the time of writing, there are two versions of Silverlight — 1.0 and 2 (previously known as version 1.1), the main difference being the support of .NET languages in version 2. For Silverlight version 1.0, you have to use JavaScript for writing your application logic. In version 2, in addition to JavaScript you can also use either C# or Visual Basic for your application logic, which is then executed by a version of the CLR built within the runtime.
The Silverlight runtimes currently support the following browsers:
□ Internet Explorer 6/7
□ Firefox 1.5/2.0
□ Safari 2.0
The following table compares the feature set of Silverlight 1.0 and Silverlight 2 Beta 1.
Features | Silverlight 1.0 | Silverlight 2 Beta 1 |
---|---|---|
2D Vector Animation/Graphics | X | X |
AJAX Support | X | X |
Cross-Browser (Firefox, IE, Safari) | X | X |
Cross-Platform (Windows, Mac) | X | X |
Framework Languages(Visual Basic, Visual C#, IronRuby, Ironpython) | X | |
HTML DOM Integration | X | X |
HTTP Networking | X | X |
Isolated Storage | X | |
JavaScript Support | X | X |
JSON, REST, SOAP/WS-*, POX, and RSS Web Services (as well as support for Sockets) | X | |
Cross Domain Network Access |