Cross Platform / Cross Browser .NET Development
Silverlight 2 includes a cross-platform, cross-browser version of the .NET Framework, and enables a rich .NET development platform that runs in the browser. Developers can write Silverlight applications using any .NET language (including VB, C#, JavaScript, IronPython and IronRuby). We will ship Visual Studio 2008 and Expression Studio tool support that enables great developer / designer workflow and integration when building Silverlight applications.
This upcoming Beta1 release of Silverlight 2 provides a rich set of features for RIA application development. These include:
WPF UI Framework: Silverlight 2 includes a rich WPF-based UI framework that makes building rich Web applications much easier. In includes a powerful graphics and animation engine, as well as rich support for higher-level UI capabilities like controls, layout management, data-binding, styles, and template skinning. The WPF UI Framework in Silverlight is a compatible subset of the WPF UI Framework features in the full .NET Framework, and enables developers to re-use skills, controls, code and content to build both rich cross browser web applications, as well as rich desktop Windows applications.
Rich Controls: Silverlight 2 includes a rich set of built-in controls that developers and designers can use to quickly build applications. This upcoming Beta1 release includes core form controls (TextBox, CheckBox, RadioButton, etc), built-in layout management panels (StackPanel, Grid, Panel, etc), common functionality controls (Slider, ScrollViewer, Calendar, DatePicker, etc), and data manipulation controls (DataGrid, ListBox, etc). The built-in controls support a rich control templating model, which enables developers and designers to collaborate together to build highly polished solutions.
Rich Networking Support: Silverlight 2 includes rich networking support. It includes out of the box support for calling REST, WS*/SOAP, POX, RSS, and standard HTTP services. It supports cross domain network access (enabling Silverlight clients to directly access resources and data from resources on the web). Beta1 also includes built-in sockets networking support.
Rich Base Class Library: Silverlight 2 includes a rich .NET base class library of functionality (collections, IO, generics, threading, globalization, XML, local storage, etc). It includes rich APIs that enable HTML DOM/JavaScript integration with .NET code. It also includes LINQ and LINQ to XML library support (enabling easy transformation and querying of data), as well as local data caching and storage support. The .NET APIs in Silverlight are a compatible subset of the full .NET Framework.
>> Silverlight 2 does not require the .NET Framework to be installed on a computer in order to run. The Silverlight setup download includes everything necessary to enable all the above features (and more we'll be talking about shortly) on a vanilla Mac OSX or Windows machine.
>>The Beta1 release of Silverlight 2 is 4.3MB in size, and takes 4-10 seconds to install on a machine that doesn't already have it. Once Silverlight 2 is installed you can browse the Web and automatically run rich Silverlight applications within your browser of choice (IE, FireFox, Safari, etc).
>>NET Framework 3.0 combines ASP.NET 2.0 and the .NET Framework 2.0 APIs with new technologies for building a broader range of applications, which include those listed below:
- Some Key Silverlight 2.0 Features :
.NET Framework Support - A rich base class library. Silverlight 2 supports C#, JavaScript, and Visual Basic..etc. - Deep zoom - Enables ultrahigh resolution imagery.
- Built-In Controls - These include Calendar, DataGrid, ListBox, ScrollViewer, Slider controls..etc.
- Skinning and Templating - Customize the look and feel of your application.
- Advertiser Support - Includes streaming and progressive download capabilities, enhanced search engine optimization techniques, and in-stream advertising support.
- Content Protection - Includes Silverlight DRM (powered by PlayReady) for robust content protection.
Silverlight Architecture
Silverlight is not only an appealing canvas for displaying rich and interactive Web and media content to end users. It is also a powerful yet lightweight platform for developing portable, cross-platform, networked applications that integrate data and services from many sources. Furthermore, Silverlight enables you to build user interfaces that will significantly enhance the typical end user experience compared with traditional Web applications.
While Silverlight as a client-side runtime environment seems simple and compact in size, the Silverlight development platform integrates a number of features and complex technologies, making them accessible for developers. To create effective Silverlight-based applications, developers need a working knowledge of the platform architecture.
There is a particular value in the combined set of tools, technologies, and services included in the Silverlight platform: They make it easier for developers to create rich, interactive, and networked applications. Although it is certainly possible to build such applications using today's Web tools and technologies, developers are hindered by many technical difficulties, including incompatible platforms, disparate file formats and protocols, and various Web browsers that render pages and handle scripts differently.
A rich Web application that runs perfectly on one system and browser may work very differently on another system or browser, or may fail altogether. Array of tools, protocols, and technologies, it is a massive and often cost-prohibitive effort to build an application that can simultaneously provide the following advantages:
· Ability to create the same user experience across browsers and platforms, so that the application looks and performs the same everywhere.
· Integration of data and services from multiple networked locations into one application using familiar .NET Framework classes and functionality.
· A media-rich, compelling, and accessible user interface (UI).
· Silverlight makes it easier for developers to build such applications, because it overcomes many of the incompatibilities of current technologies, and provides within one platform the tools to create rich, cross-platform, integrated applications.
Core Presentation Features of Silverlight
Input => Handles inputs from hardware devices such as the keyboard and mouse, drawing, or other input devices.
UI rendering=> Renders vector and bitmap graphics, animations, and text.
Media => Features playback and management of various types of audio and video files, such as .WMP and .MP3 files.
Controls =>Supports extensible controls that are customizable through styling and templating.
Layout =>Enables dynamic positioning of UI elements.
Data binding =>Enables linking of data objects and UI elements.
DRM =>Enables digital rights management of media assets.
XAML =>Provides a parser for XAML markup.
Developers can interact with this presentation framework by using XAML to specify presentation details. XAML is the primary point of interaction between the .NET Framework and the presentation layer
The .NET Framework for Silverlight features
Data => Supports Language-Integrated Query (LINQ) and LINQ to XML features, which ease the process of integrating and working with data from disparate sources. Also supports the use of XML and serialization classes for handling data.
Base class library => A set of .NET Framework libraries that provide essential programming functions, such as string handling, regular expressions, input and output, reflection, collections, and globalization.
Window Communication Foundation (WCF) => Provides features to simplify access to remote services and data. This includes a browser object, HTTP request and response object, support for cross-domain HTTP requests, support for RSS/Atom syndication feeds, and support for JSON, POX, and SOAP services.
CLR (common language runtime)=>Provides memory management, garbage collection, type safety checking, and exception handling.
WPF (Windows Presentation Foundation) controls=>Provides a rich set of controls, including Button, Calendar, CheckBox, DataGrid, DatePicker, HyperlinkButton, ListBox, RadioButton, and ScrollViewer.
DLR (dynamic language runtime) =>Supports the dynamic compilation and execution of scripting languages such as JavaScript and IronPython to program Silverlight-based applications. Includes a pluggable model for adding support for other languages for use with Silverlight.
Developers can interact with the .NET Framework for Silverlight layer by writing managed code using C# and Visual Basic. .NET Framework developers can also access the presentation layer by authoring in Visual Studio 2008 or Microsoft Expression Blend.
Additional Silverlight Programming Features
Isolated storage is Provides safe access from the Silverlight client to the local computer's file system. Enables local storage and caching of data isolated to a particular user.
Asynchronous programming is a background worker thread carries out programming tasks while the application is freed up for user interaction.
File management isProvides a safe File Open dialog box, to ease the process of creating safe file uploads.
HTML–managed code interaction is enables .NET Framework programmers to directly manipulate UI elements in the HTML DOM of a Web page. Web developers can also use JavaScript to call directly into managed code and access scriptable objects, properties, events, and methods.
Serialization is provides support for serialization of CLR types to JSON and XML.
Packaging is provides the Application class and build tools to create .xap packages. The .xap package contains the application and entry point for the Silverlight plug-in control to run.
XML libraries is XmlReader and XmlWriter classes simplify working with XML data from Web services. The XLinq feature enables developers to query XML data directly within .NET Framework programming languages.
The following Microsoft applications include special features for Silverlight development:
· Microsoft Expression Blend. This tool can be used to create and modify the presentation layer of an application by manipulating the XAML canvas and controls, working with graphics, and programming the presentation layer with a dynamic language such as JavaScript.
· Visual Studio 2008. Visual Studio provides productivity tools for developing applications using managed code. All the existing features of Visual Studio are available for Silverlight. In addition, this version of Visual Studio includes Silverlight-specific features, including IntelliSense, debugging, and Silverlight project templates that create and link all required files.
No comments:
Post a Comment