Microsoft is currently interested in using AJAX-style programming to implement increasingly popular rich-client applications in browsers. Future IE will have all the Ajax things--dhtml, JScript and XMLHTTP. In fact, the Outlook Web Acces has been providing this great browsing experience since 1998. In asp.net 2.0, Microsoft uses asynchronous callbacks and comfortable Ajax-style applications to write simpler, and Microsoft provides built-in controls for this.
Most recently, almost all browsers provide the technology needed for Ajax, and rich client applications that use this pattern continue to emerge. Today, there are countless Ajax-style sites in the world, including many of Google's sites, A9 and Flickr. Many of Microsoft's sites also use this technology, such as start.com and MSN Virtual Earth.
The popularity of Ajax illustrates the growing need for a rich web experience. However, developing and debugging AJAX-style Web applications is a very difficult task. To write a rich web UI, developers need to have a detailed understanding of DHTML and JavaScript, as well as the differences in design details between browsers. However, none of those tools can simplify the design and development of these applications. Finally, debugging and testing these applications can become extremely difficult.
Microsoft is committed to simplifying the development of AJAX-style Web applications and providing a rich, interoperable, and personalized user experience. Developers can have little knowledge of client script, but they can easily develop and debug such applications.
For this purpose, Microsoft has launched a new project to develop the code "Atlas". Atlas brings the following characteristics for development:
· Atlas Client Script Framework
· asp.net server control for Atlas
· asp.net Web Services Integration
· asp.net building blocks for Atlas
• Client building block Services
One of the questions you might ask is how Atlas is used on Avalon and smart clients.
As we can see, Atlas is the best way to write rich, interoperable, and personalized web browser applications. And Avalon is the next generation of Microsoft's presentation layer model, which can provide the richest user experience on the Windows platform. Avalon will use the latest media integration features and hardware acceleration devices to provide a superior visual experience. Avalon will bring an experience beyond the browser.
Of course, when you build a Avalon application, you can still reuse the programming models in ASP.net and atlas. For example, ASP.net building block services and client building block services can still be used on Avalon clients. This model allows you to smoothly transition to the next generation of applications.
Atlas: Client Script Framework
The Atlas client-side scripting framework is an extensible, 100% object-oriented JavaScript client script framework that allows development to easily build Ajax-style browser applications that have rich UI work and can connect to Web services. With Atlas, developers can use DHTML, JavaScript, and XMLHTTP to write Web applications without having to master the details of these technologies.
The Atlas client script framework can be run on all modern browsers without the need for a Web server. It also does not require installation at all, as long as the correct script file is referenced in the page.
The Atlas client script framework contains the following components:
• An extensible and new framework that adds many new features to JavaScript, such as lifetime management, integration, multicast event handlers, and interfaces
• A base Class library that provides common features such as rich string manipulation functions, timers, and running tasks
• A UI framework that enables dynamic behavior across browsers
• A network stack that simplifies connection to the server and access to Web services
Atlas:ASP.NET server Control
Microsoft has designed a set of AJAX-style server controls for ASP.net applications and has tightened existing ASP.net page frames and controls to support the Atlas client script framework.
ASP.net 2.0 has a new feature called asynchronous client callbacks that makes it easy to build non-disruptive pages. Asynchronous client callbacks are packaged with XMLHTTP and can work on many browsers. Asp. NET itself includes many controls that use callbacks, including GridView and Detalsview controls with client paging and sorting capabilities, and virtual list support for the TreeView space.
The Atlas client script framework fully supports the ASP.net 2.0 callback, but Microsoft wants to further enhance the integration between browsers and servers. For example, you can designate the data bindings for the Atlas client control as the ASP.net data source control on the server, and you can control the personalization characteristics of the Web page asynchronously from the client.
Atlas:ASP.NET Web Services Integration
As with any client application, an AJAX-style Web application often requires access to some features of the Web server. The model of the Atlas application connecting to the server is similar to that of other platforms, and is implemented using Web services.
Integrated with ASP.net Web services, the Atlas application will be able to access this framework directly to any ASMX or Indigo service hosted on asp.net through the Atlas client on any XMLHTTP-enabled browser. The framework will automatically handle the serialization of proxies and scripts to objects, objects to scripts, and so on. By using Web services integration, developers can use a single programming model to write Web services and use them in any application, whether on a browser-based site or in a smart client application.
Atlas:ASP.NET Building Block Service
In asp.net 2.0, Microsoft built a rich set of building block services (building blocks service), making it incredibly easy to build powerful, personalized Web applications. These building blocks greatly reduce the amount of code that needs to be written to develop a common web application, such as managing users, authenticating users through roles, and storing personalization information for users. With Atlas, we can access these features in any client application on any browser to access Web services. For example, if you are developing a site to display a user's to-do project, you can use the ASP.net profile service to store them in a user-defined configuration file on the server. This allows users to access these items even if they are transferred from one machine to another. Microsoft will provide services including (all based on ASP.net 2.0):-profile: Store each user-specific data on the server
-UI Personalization: Storing personalized UI settings information on the server
-Validation: Validating users
-Roles: Authenticating User tasks based on user roles and providing different UI as these building blocks are server-side, developers need to apply the same security model they have to other sites. These services do not require anything under the client-just refer to the script agent in the browser.
All ASP.net 2.0 building block services are pluggable, which is implemented in the background using a generic provider model extensible pattern. The built-in provider provided by Microsoft allows developers to use SQL Server databases or Active Directory as storage containers, and developers can easily plug in their own providers. For example, you might want to use a cluster instead of a database server to hold the user's profile, so you simply plug in your provider.
Atlas: Client building block Services
In addition to DHTML, JScript, and XMLHTTP, Microsoft offers a set of additional services to enhance the functionality of the client and provide an enhanced experience.
For such a service, the local browser cache is a good example. When local browser caching is enabled, the Web site can store the content to the patient and take it out quickly when needed. But browsers do not provide APIs to store data in the cache, and applications like Google Map or OWA have to produce a unique URL through a lot of work so that browsers can cache it. In Atlas, Microsoft provides programmable local storage/caching, so applications can easily, efficiently, and securely cache data locally.
Integration with other applications is another new standard for verifying the richness of the web experience. For example, when a user browses to an auction site and bids on a product, he may want to know at any time when the auction ends, but how he can add the event to their personal calendar program. Atlas brings a series of client building block services that when used to select Add to Calendar, the browser calls the docking point to get the calendar data and passes it to the local calendar program. There is no need to download or run any special code or perform any initialization action on the page, so this is much more secure than ActiveX.
Originally in: TechTarget
http://club.techtarget.com.cn/blog/viewBlog.html?blogId=1881