Home. 
.

transparent

transparent

transparent

AJAX & Web 2.0


AJAXAJAX (Asynchronous JavaScript and XML) is a programming methodology for the creation of interactive Web applications. It is designed to increase the speed, efficiency and overall usability of Web pages by processing information incrementally, rather than requiring a page to reload every time a user inputs new data.

AJAX is not a programming language, but rather a recommendation for using a collection of technologies to produce the desired effect. Because these technologies are platform-agnostic, Web developers can implement AJAX on any number of operating systems, architectures, and Web browsers.

Because of its ability to present rich, dynamic, user-friendly content, the AJAX model is often associated with Web 2.0. The phrase Web 2.0 is a common term used to describe the evolution of the Internet, from a simple ecommerce and one-to-one communication platform to a vast matrix of hosted services including social networking sites, wikis, blogs, etc.

Altova Tools for AJAX Developers

The Altova MissionKit™ software product bundle provides a selection of powerful application development and data management tools that support AJAX design at a variety of different points:

  • XMLSpy® – Altova XMLSpy is the industry standard XML editor and development environment and provides full support for XSLT 1.0 and 2.0, as well as HTML. It also includes a fully functional CSS editor for presentation styling. XMLSpy features sophisticated graphical XML Schema and WSDL/SOAP editors, for valid and seamless data exchange in AJAX applications, as well as a SOAP debugger for testing and troubleshooting SOAP messages. As XML is a cornerstone of the AJAX model, having a solid data model defined via XML Schema is critical to the success of Web 2.0 applications. The graphical XML Schema editor in XMLSpy allows for the seamless creation of such data models either from relational data models in the database infrastructure, from XML use-case documents, or from scratch. Once the data models are defined, you can use the XSLT editor to create any XSLT transformations needed in your application architecture and test them with the powerful XSLT Debugger.
  • MapForce® – Altova MapForce is the leading graphical data mapping, conversion, and integration tool. It provides extensive support for Web services design and development and can connect directly to services for data processing and even generate application code in Java or C#. MapForce also supports XML and database mapping, simplifying the migration of backend data stores. An essential trait of Web 2.0 applications and the AJAX model is that data from various heterogeneous data sources – typically database servers – is being used in the application. MapForce can be invaluable when it comes to aggregating such data and exposing it in XML format – either directly, or through a Web Service – and the built-in code generation capabilities of MapForce can cut many developer-weeks out of the go-to-market timeline.
  • DatabaseSpy® – Altova DatabaseSpy is a multi-database query and design tool that provides a simple interface for connecting to any major database, allowing developers freedom and flexibility in their backend data management. AJAX is often used in the context of Web 2.0 applications which store all user-related content in secure database backend servers. DatabaseSpy is the ideal tool to work with such data, because it is the only tool that connects simultaneously to multiple different relational database servers and understands XML data inside the database like no other database tool.
  • DiffDog® – Altova DiffDog is a powerful XML-aware differencing utility that allows developers to instantly diff and merge their source code files, XML documents, XSLT stylesheets, schemas, and other components of their AJAX architecture. This is great for revision management as well as deployment and testing.
  • MissionKit™ – The Altova MissionKit is the secret to savings on top XML, data management, UML, and Web services tools. Get eight industry-leading tools for less than the price of two* and get all the tools you need for your AJAX or Web 2.0 application development. Download a free trial today.
Deconstructing AJAX

AJAX employs a combination of:

  • The XMLHttpRequest object for asynchronous data retrieval
  • JavaScript for controlling functional operations
  • XML and XSLT for client-server data exchange and manipulation
  • The DOM (Document Object Model) for dynamic display and interaction
  • XHTML (or HTML) and CSS for the presentation layer
Advantages
  • Bandwidth reduction
    Possibly the most obvious benefit of AJAX development is the vast reduction in bandwidth usage resulting from local HTML generation. Traditionally, Web pages have been designed to reload entirely with each user interaction, requiring browsers to redisplay ALL information, including static features like background color, graphics, and menu displays. Using AJAX, developers can design Web pages that retrieve only JavaScript calls and actual data. In addition to decreasing demand on server payloads, this also greatly increases the efficiency and usability of AJAX-enabled Web pages.
  • Separation of data, structure, style, and function
    XML developers are already very familiar with the advantages of separating content from presentation. AJAX brings this concept firmly into the world of dynamic Web development, dictating the separation of:
    • Raw data derived from the user interaction for delivery to the end system (which will in most cases be a server-side database)
    • The format or structure of the Web page (usually XHTML)
    • Style elements in CSS
    • The functionality of the Web page, defined by a server-side scripting language such as JavaScript
  • Accessibility
    AJAX is based on open standards, which are supported by a variety of browsers and platforms, giving programmers access to the widest possible audience, and target users’ freedom of choice.
The AJAX Difference

The AJAX model was designed to give Web applications greater flexibility and responsiveness, increasing usability in a time when users are demanding more and more direct interaction with the Internet (social networking sites, wikis, collaborative tagging environments, etc.).

Traditional Web applications give the user direct contact with the Web server, sending data in the form of an HTTP request with almost every user action and then returning an HTML page. Using this model, the server spends a good deal of time processing information while the user is waiting for the result.

The AJAX model enables Web applications to do their processing and information retrieval behind-the-scenes by adding an intermediate layer, the AJAX engine, between the user and the server.

AJAX in Practice

Following are just a few practical real-word uses for AJAX. Some of these features can be built using other development models or workarounds such as client-side includes, but AJAX provides a slicker, more efficient outcome, and ultimately a much richer user experience.

  • Personalized Content
    With the advent of the Web-based community phenomenon commonly referred to as Web 2.0, Internet users are beginning to expect a more personalized experience from the sites that they visit. The AJAX method enables this by allowing developers to apply static properties to certain components, resulting in everything from the highly personalized home pages that we see in social networking applications such as Facebook and MySpace, to the highly integrated content produced in mashups derived from Google Maps and RSS feeds.
  • Dynamic Search
    Because AJAX can be used to exchange information with a server behind the scenes, it can be implemented to respond to a user’s input data as they are typing it. One of the best examples for this can be seen in Google Suggest, where suggested results are returned to the user with every keystroke.



Google Suggest AJAX

  • Live Chat
    Chat applications depend on real-time data processing to present messages to end users. AJAX-driven online chat solutions, such as Meebo, provide a simpler and more feature-rich alternative to traditional versions, drawing on typical AJAX benefits such as integration with existing browser features and cross-platform compatibility.
  • Richer Shopping Experience
    An extremely common use for AJAX that most online shoppers have come across is manifested by the “Quick Look” option now employed the Gap companies and a similar preview feature implemented by many other forward-thinking retailers. Clicking on or sometimes mousing over this link opens a popup window which provides additional information about the item, such as available sizes, colors, etc. Additional mouse-over features change the item views according to user preference. The aim here is to keep shoppers on their browsing path, while at the same time offering the required information.



Piper Lime AJAX

Additional Resources



* Pricing comparison is edition-specific and based on Altova MissionKit vs. any two individual licenses of the following included products: XMLSpy and MapForce.



transparent
Download
Feature Comparsion
Print
Mail
Digg
delicious
.
.

transparent

transparent