AJAX INTERVIEW QUESTIONS WITH ANSWER

Q.1 What's AJAX ?

ANSWER:
AJAX (Asynchronous JavaScript and XML) is a newly coined term for two powerful browser

features that have been around for years, but were overlooked by many web developers until

recently when applications such as Gmail, Google Suggest, and Google Maps hit the streets.

Asynchronous JavaScript and XML, or Ajax (pronounced "Aye-Jacks"), is a web development

technique for creating interactive web applications using a combination of XHTML (or HTML)

and CSS for marking up and styling information. (XML is commonly used, although any format

will work, including preformatted HTML, plain text, JSON and even EBML).
The Document Object Model manipulated through JavaScript to dynamically display and interact

with the information presented
The XMLHttpRequest object to exchange data asynchronously with the web server. In some Ajax

frameworks and in some situations, an IFrame object is used instead of the XMLHttpRequest

object to exchange data with the web server.
Like DHTML, LAMP, or SPA, Ajax is not a technology in itself, but a term that refers to the

use of a group of technologies together. In fact, derivative/composite technologies based

substantially upon Ajax, such as AFLAX, are already appearing.
Ajax applications are mostly executed on the user's computer; they can perform a number of

tasks without their performance being limited by the network. This permits the development

of interactive applications, in particular reactive and rich graphic user interfaces.
Ajax applications target a well-documented platform, implemented by all major browsers on

most existing platforms. While it is uncertain that this compatibility will resist the

advent of the next generations of browsers (in particular, Firefox), at the moment, Ajax

applications are effectively cross-platform.
While the Ajax platform is more restricted than the Java platform, current Ajax applications

effectively fill part of the one-time niche of Java applets: extending the browser with

portable, lightweight mini-applications.

Ajax isn’t a technology. It’s really several technologies, each flourishing in its own

right, coming together in powerful new ways. Ajax incorporates:
* standards-based presentation using XHTML and CSS;
* dynamic display and interaction using the Document Object Model;
* data interchange and manipulation using XML and XSLT; * asynchronous data retrieval using

XMLHttpRequest;
* and JavaScript binding everything together.

Q.2 Who’s Using Ajax ?

ANSWER:Google is making a huge investment in developing the Ajax approach. All of the major

products Google has introduced over the last year — Orkut, Gmail, the latest beta version of

Google Groups, Google Suggest, and Google Maps — are Ajax applications. (For more on the

technical nuts and bolts of these Ajax implementations, check out these excellent analyses

of Gmail, Google Suggest, and Google Maps.) Others are following suit: many of the features

that people love in Flickr depend on Ajax, and Amazon’s A9.com search engine applies similar

techniques.
These projects demonstrate that Ajax is not only technically sound, but also practical for

real-world applications. This isn’t another technology that only works in a laboratory. And

Ajax applications can be any size, from the very simple, single-function Google Suggest to

the very complex and sophisticated Google Maps.

At Adaptive Path, we’ve been doing our own work with Ajax over the last several months, and

we’re realizing we’ve only scratched the surface of the rich interaction and responsiveness

that Ajax applications can provide. Ajax is an important development for Web applications,

and its importance is only going to grow. And because there are so many developers out there

who already know how to use these technologies, we expect to see many more organizations

following Google’s lead in reaping the competitive advantage Ajax provides.
Moving Forward

The biggest challenges in creating Ajax applications are not technical. The core Ajax

technologies are mature, stable, and well understood. Instead, the challenges are for the

designers of these applications: to forget what we think we know about the limitations of

the Web, and begin to imagine a wider, richer range of possibilities

Q.3 Should I consider AJAX?

ANSWER:AJAX definitely has the buzz right now, but it might not be the right thing for you. AJAX is

limited to the latest browsers, exposes browser compatibility issues, and requires new

skill-sets for many. There is a good blog entry by Alex Bosworth on AJAX Mistakes which is a

good read before you jump full force into AJAX.
On the other hand you can achieve highly interactive rich web applications that are

responsive and appear really fast. While it is debatable as to whether an AJAX based

application is really faster, the user feels a sense of immediacy because they are given

active feedback while data is exchanged in the background. If you are an early adopter and

can handle the browser compatibility issues, and are willing to learn some more skills, then

AJAX is for you. It may be prudent to start off AJAX-ifying a small portion or component of

your application first. We all love technology, but just remember the purpose of AJAX is to

enhance your user's experience and not hinder it.

Q.4 Does AJAX work with Java?

ANSWER:Absolutely. Java is a great fit for AJAX! You can use Java Enterprise Edition servers to

generate AJAX client pages and to serve incoming AJAX requests, manage server side state for

AJAX clients, and connect AJAX clients to your enterprise resources. The JavaServer Faces

component model is a great fit for defining and using AJAX components.