atlas-Microsoft Ajax Toolkit (from MSDN Scott Guthrie)

Source: Internet
Author: User
Tags add object final net new features version web services access
ajax| Microsoft

Microsoft has now entered the final RTM milestone at ASP.net 2.0 and the visual Web Developer 2005 release. To achieve ZBB (Zero Bug bounce), Microsoft has locked in the features of these products, focusing on optimizing the final quality, performance and reliability.

At the same time, Microsoft began the next release of research and Development, one of the important research direction is through AJAX-style programming in the browser to achieve the increasingly popular rich client applications.

Future IE will have all the things Ajax needs--dhtml, JScript, and XMLHTTP. In fact, Outlook Web Access 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 a lot of built-in controls for this.

Today, 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 Microsoft sites also use this technology, such as the start.com and MSN Virtual Earth projects.

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, there are no tools to 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 seamlessly integrate the browser UI with other applications they write, and they can easily develop and debug these applications.

For this purpose, Microsoft launched a new project, the development of code-named "Atlas." At the same time, Microsoft has launched a site to continually update its core progress and examples and build an active community around it. At the PDC conference in September, developers were able to see the technology Preview version of Atlas.

The following are the features that Atlas has.

Atlas Client Script Framework

The Atlas client script framework is an extensible, 100% object-oriented JavaScript client script framework that allows developers to easily build Ajax-style browser applications that have rich UI capabilities 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, regardless of the Web server you are using. 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 core framework that adds many new features to JavaScript, such as lifetime management, inheritance, multicast event handlers, and interfaces

L A base class library that provides common features such as rich string manipulation functions, timers, and running tasks

L A UI framework that enables the dynamic behavior of HTML across browsers

L A network stack that simplifies connection to the server and access to Web services

L A set of rich UI-enabled controls, such as Auto-complete text boxes, pop-up panels, animated controls, and drag-and-drop

L A browser-compatible layer (Layer) for locating different script behaviors in different browsers

asp.net server control for Atlas

For ASP.net applications, Microsoft has designed a set of AJAX-style server controls 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 callback (asynchronous client callbacks) that makes it easy to build asp.net pages that do not cause page breaks when content is updated from the server. 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 control.

The Atlas client script framework will fully support the ASP.net 2.0 callback, but Microsoft hopes to further enhance the integration of browsers and servers in the future. For example, you can bind the data for the Atlas client control and designate it as a asp.net data source control on the server, and you can asynchronously control the personalization characteristics of the Web page from the client.

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 any asp.net asmx or indigo service directly to any host using this framework through the Atlas client in any browser that supports XMLHTTP. The framework will automatically process, broker, and script to object, object to script serialization issues. 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.

asp.net building blocks for Atlas

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

L Validation: Validating users

L Role: Authenticating User tasks based on user roles and providing different UI

Because these building blocks are server-based, developers need to apply the same security model they have to other sites. These services do not require a client to download anything-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 (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 a user's profile, and you can simply plug in your provider--all by the developer.

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 content in the cache and quickly take it out 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 in order for the browser to 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 makes a bid on a product, he may want to know when the auction ends, but how can he add the event to a personal calendar program? Atlas brings a series of client building block services that when the user selects 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.

Next

As our technology progresses, a lot of things will happen. We are now beginning to develop, develop, and debug the next version of the tools, so we will soon provide a greater development experience for these types of rich Web applications.

One of the questions you might ask is: How does Atlas work on Avalon and smart clients?

We can see that Atlas is the best way to write rich, interactive, and personalized web browser applications, and Avalon is the next generation of Microsoft's presentation layer model that delivers the most extensive 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.



Related Article

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.