AJAX

The term AJAX was coined by Jesse J. Garrett in 2005. Ajax, which stands for Asynchronous Javascript and XML
Used for creating interactive web applications or rich Internet applications and Update pages “on the fly”. It is also used to retrieve data from the server asynchronously in the background. Ajax is a way of developing Web applications that combines:

  • XHTML and CSS based presentation
  • Interaction with the page through the DOM
  • Data interchange with XML and XSLT
  • Asynchronous data retrieval with XMLHttpRequest
  • JavaScript for dynamically interacting with the information presented
  • XML, XSLT object to manipulate data asynchronously with the Web server.

Using AJAX you can have the flexibilty of a browser, but the slickness and reduced network traffic of a smart client.

Advantages

  • Speed and invisibility makes for a very slick user experience.
  • The smaller server resources footprint helps server scalability.
  • Reduce bandwidth.
  • More interactivity.
  • More complex applications (e.g. email clients)
  • Fast and flexible to more robust and manageable
  • Specialized skills vs existing skills
  • Client based to more server centric
  • Design of Server push capability
  • Degree of built in Security
  • Approach to scalability
  • Library of rich components
  • Interoperability with other solutions

Highlights in AJAX

  • Seperation between data, view, controller, style, state, language, layout
  • 60 components
  • Standards compliant (DOM, DOM Events, XForms, CGI, SOAP, XMLRPC, XSLT, XPath, XML Schema, JSON, HTTP, HTML, CSS)
  • J Markup Language with W3C DOM support (including DOM Events).
  • Single interace for any webservice protocol (SOAP, XMLRPC, JSONRPC, CGI, etc)
  • Property binding / Dynamic attributes
  • Smartbindings - Two-way databinding to local and remote data.
  • Support for locking remote resources
  • GUI transaction support (experimental)
  • Authentication abstraction ,Skinning abstraction
  • Three layout methods (Alignment, Anchoring, Grid)
  • Dockable layout
  • Native undo / redo support
  • Realtime skin,language switching
  • Auto generation of language files, at any time during/after application development.
  • JSLT templating language for easier conversion from xml to html
  • HTML5 form validation with validation grouping and form automation
  • Data instruction format for easy retrieval and storage of data
  • Drag and drop automation between components
  • Resizable and draggable components for runtime UI customization
  • Offline storage solution using all popular providers (incl. html5, gears, flash)
  • Decent animation library
  • Back button control abstracted for all browsers implementing onhashchange
  • Sorting, printing and date library
  • Debug tools including in debug package (including data viewer, log viewer and profiler)
  • Browser abstaction offering same API for all browsers (for xml dom, xpath selection, etc)
  • Advanced focus handling between components and between browser and operating system
  • Several rendering methods for easy integration in existing web projects
  • Namespace support for in HTML documents loading
  • Tight memory management by caching, reuse and cleanup
  • Fully optimized renderer
  • Package size is completely controllable by using the free packager tool
  • Virtual viewport abstraction to support large datasets (experimental)
  • Application wide settings
  • Fully generalized API's by using element traits.

Features

More interactive and productive interaction
  • Ajax is about how to deliver information to end users in a way that is easier to understand, delivered faster and in a more intuitive way and for users to be able to communicate back to a host system more effectively.
  • Ajax breaks the traditional web interface where everything happens at the page level and nothing happens until the user requests information. Intuitively.

Real value add of Web 2.0

  • Ajax is now referred as the real value add of Web 2.0, the core capability for delivering SOA, mash-ups and highly collaborative and other web 2.0 applications.

Upgrade of existing application or new application

  • Ajax techniques apply very well to most existing applications and can provide a very fast incremental improvement to an existing application. The frame work is equally valuable for upgrades to existing applications and for new applications.

The Basics: Core interaction requirements

  • The number and frequency of full page requests that can be replaced with small data exchanges will reduce user wait time and improve productivity in a measurable way.
  • High rate of error on full page inputs or a large number of full page inputs will benefit from the real time field level editing of Ajax.
  • Bandwidth consumed for the entire task. Traditional interfaces can absorb large amount of bandwidth slow response times and eat cpus.
  • In short, the more the application is highly time dependent with many small interactions the ROI of Ajax increases.

The size of the user population

  • Ajax benefits both small and large user populations
  • In general the larger the user population the greater the need for a framework that easily scales and can be readily maintained

Mission critical nature of the application

  • The greater the strategic value of the application, the greater the investment in RAS required.
  • Highly mission critical applications may be less desireable early candidates, but offer the highest ultimate return.

Application architecture considerations

  • Ajax increases the feasibility of an effective SOA architecture.

Real time nature of the underlying application

  • Real time monitoring and realtime or near realtime business applications benefit significantly from Ajax.
  • JavaScript allows replacing content without refreshing the page (for example, using the ) .
  • The XMLHttpRequest API facilitates retrieving content from server-side files or remote websites.
  • The XMLHttpRequest methods can run in separate threads,
  • The requested website can be a server-side script which might access databases or other complex functionality.
  • Complex content can be sent as XML (processed by DOM) or as JSON.

Conclusion

Ajaxhas changed the face of the web forever.The interface is much more responsive, as explained before, because only a small part of the page is transferred at a time. The user has the feeling that changes are instantaneous.

  • In a classic web application, when the web server sends a web page to the browser, it can use multiple connection threads to speed up delivery. However, this happens for content only – what is between the <body> tags. All script and CSS files linked in the page's <head> section are transferred using only one connection thread, which deteriorates performance. With AJAX, you only have to load the basic scripts and CSS files, and request the rest as content, through multiple connections.
  • Waiting time is reduced – when the visitor submits a form, they don’t have to wait for the entire page to be rebuilt and re-transmitted by the server. Instead, only the relevant content changes, and in non-critical cases, the visitor can still work while the data is being submitted.
  • If a page section encounters an error, other sections are not affected unless logically linked and the data already entered by the user is not lost.
 

Latest News

Feedback from Chulalongkorn University “Octalsoftware has delivered what the team promised and set out to do. It works out fine and I am quite satisfied with the product. So, thumb up for Octalsoftware.” Browse the link: http://mmchula.acc.chula.ac.th to navigate the website.

Logo

Logo

Logo

Logo

 

Logo

 
 

Logo

oDesk Certified oDesk Professional

 

Terms & Conditions |  Privacy policy | SiteMap

© 2007 - 2009 Octal info Solutions Pvt. Ltd, All Rights Reserved.

This site is validate from W3C.

Banner
XHTML
Banner
CSS 2.0