Thursday, April 13, 2006

AJAX - The New Giant

AJAX – Asynchronuos Javascript And XML – is a new technique introduced recently to give more richness to web applications. AJAX is totally executed on the client machine. We can consider AJAX as a Java Applet – The Sun technology – in the main idea.

Web applications in general can be formalized as a “Request” and a corresponding “Response”. In other word, any web application is synchronous – a request and an acknowledge (response). This criteria makes web applications some how not rich in developing. Many functionalities done in desktop applications is not easy to be performed in web development.

For example, suppose you want to make a small dictionary that accept a word in English and return the equivalent in Arabic. If your decision is to make this application as web-based application, then you will have a web form which accept your word, after submition, your browser will perform a request. In meanwhile, the whole page will be refreshed to give you finally the equivalent word in Arabic!

As you see, for this simple proces, there is no need to refresh the whole page just to get the translation of one english word. Offcourse, you hope that your user can enter his english word and after submission, the results is shown in the same page without refreshing. The process simplicity, make this experience. This is what your user expect from the application.

In desktop application, a process like that is so easy. However, in web application, this is some how so hard to be done.

AJAX comes to solve such kind of problems in web development. AJAX act like a background component which can make small requests and get the response without the need to refresh the webpage. The same way the desktop applications act.

Actually, we can’t define AJAX as a new technology. AJAX is a group of technologies, grouped to solve a certain problem faced by web developers. AJAX uses XHTML (Extended Hyperlink Text Markup Language), CSS (Cascaded Style Sheets), DOM, ActiveX, XML and offcourse Javascript.

AJAX is supported now with many browsers such as Internet Explorer 5 or later, Netscape, Mozilla, Firefox and Opera. The technique also can be seen in many online applications like Gmail and GoogleMaps.

AJAX now can be used in .NET applications using ATLAS component – a release of AJAX for .NET technology.

AJAX is spreading now. And we have now a new effecive tool in building rich web applications. However, we need to change the way we think about the web.