The library has wrapped up common functionality, and been reused across projects, and it can reduce the amount of custom coding needed for a project and increases productivity. Furthermore, since, the library code has already been tested in previous projects, the quality can be expected to be high.
Cross-browser libraries
It is to help to resolve the inconsistencies between different browser. some focus on functionality, some focus on programming environment.
x library
Its general-purpose library is for writing DHTML application. It provides cross-browser functions for manipulating and styling DOM elements, working with browser event model, and includes out-of-box support libraries for animation and drag and drop. It doesn't contain any code for the creating network requests, but is a useful library for constructing the user interfaces for AJAX application. written in a clear, understandable style.
Sarissa
More targeted library than x, and is concerned chiefly with XML manipulation in JavaScript. The most important piece of functionality for AJAX developers is cross-browser support for the XMLHttpRequest object. It supports IE's MSXML ActiveX components (version 3+), Mozilla, Opera, Konqueror, Safari for basic functionality, some of advanced feature such as XPath and XSLT are supported by a smaller range of browsers.
Sarissa also provides a number of generic support mechanisms for working with XML documents, such as serialize arbitrary JavaScript objects to XML. If we use XML as the markup for response data, these mechanisms can be useful in processing the XML documents returned from an AJAX request to the server.
Prototype
Prototype is a general-purpose helper library for JavaScript programming, with an emphasis on extending the JavaScript language itself to support a more object-oriented programming style. Prototype code itself can be difficult to read, most developers are more likely to use the libraries built on top of Prototype than to use Prototype itself.
Feature:
- Allow one object to "extend" another by copying all of the parent object's properties and methods to the child.
- Prototype also provides AJAX support in the form of an AJAX object that can resolve a cross-browser XMLHttpRequest object. AJAX is extended by the Ajax.Request type, which can make requests to the server using XMLHttpRequest, like so: var req=new Ajax.Request('myData.xml'); An associate array as an optional argument allows a wide range of options to be configured, such as post data, request parameters, HTTP method, and callback handlers to be defined.
Widgets and widget suites
With these tools constructing functional UIs and application logic is certainly simplified.
Scriptaculous
It is built on top of Prototype library. It provide 2 major pieces of functionality.
- The effect library defines a range of animated visual effects that can be applied to DOM elements ( change size, position, and transparency); A number of predefined secondary effects such as Puff() makes an element grow larger and more transparent until it fades away completely. Another core effect is called Parallel(), enable simultaneous execution of multiple effects.
- Provide a drag-and-drop library, through Sortable class. This class takes a parent DOM element as an argument and enables drag-and-drop functionality for all its children.
- It is built on Prototype library too. Not only provide some highly customizable effects and drag-and-drop effects functionality. In addition, it provides a concept of a Behavior object, a piece of code that can be applied to part of a DOM tree to add interactive functionality to it.
- Last feature of Rico to mention is that it provides very good support for AJAX-style requests to the server, through a global Rico Ajax Engine object. It defines an XML response format that consists of a number of
elements. The engine will automatically decode these, and it has built-in support for two types of response: 1) direct update DOM elements and 2) update JavaScript objects.
Gaia Ajax Web Widgets - to its Homepage
Gaia Ajax Web Widgets is an Ajax library for developing Ajax applications for ASP.NET. (2.0 and higher) It is a commercial library but has a stripped down free .zip download. It has a different approach than most of the other Ajax widgets libraries that mostly do update the complete HTML and sends HTML over the net. Instead Gaia has chosen to mirror the control class hierarchy on the client side and post JavaScript updates to concrete objects. It relies heavily on Prototype.js and Scriptaculous in its core and consists of fairly advanced JavaScript code like prototype inheritance and JavaScript "polymorphism". Though all JavaScript is abstracted away so the developer can mostly develop in the language he's used to developing in like C# or VB.NET.
Microsoft AJAX Library - to Microsoft AJAX Library
The Microsoft AJAX Library is a standalone collection of the standards-based JavaScript classes included in ASP.NET AJAX. It is supported by most popular browsers and can be used to build client-centric web applications that integrate with any back end data provider.
Reference:
Gaia Ajax Web Widgets is an Ajax library for developing Ajax applications for ASP.NET. (2.0 and higher) It is a commercial library but has a stripped down free .zip download. It has a different approach than most of the other Ajax widgets libraries that mostly do update the complete HTML and sends HTML over the net. Instead Gaia has chosen to mirror the control class hierarchy on the client side and post JavaScript updates to concrete objects. It relies heavily on Prototype.js and Scriptaculous in its core and consists of fairly advanced JavaScript code like prototype inheritance and JavaScript "polymorphism". Though all JavaScript is abstracted away so the developer can mostly develop in the language he's used to developing in like C# or VB.NET.
Microsoft AJAX Library - to Microsoft AJAX Library
The Microsoft AJAX Library is a standalone collection of the standards-based JavaScript classes included in ASP.NET AJAX. It is supported by most popular browsers and can be used to build client-centric web applications that integrate with any back end data provider.
Reference:
- Rico Library: http://en.wikipedia.org/wiki/Rico_%28Ajax%29
- Scriptaculous: http://en.wikipedia.org/wiki/Scriptaculous
- Gaia Ajax Web Widgets: http://en.wikipedia.org/wiki/Gaia_Ajax_Web_Widgets
- Microsoft AJAX Library: http://en.wikipedia.org/wiki/Microsoft_AJAX_Library
- AJAX in Action,2005
No comments:
Post a Comment