But, as everyone comes with their own combination of pros and cons, AJAX is no different. Therefore, I have enlisted some of the important conditions that one should know, both for and against, when using AJAX.
Some PROS that make using AJAX worthwhile:
Enriching User Experience: While technologies that preceded AJAX needed the webpage to be reloaded completely when a single change was made, AJAX allows webpage to update serially by exchanging minimal amount of data with the servers. This makes it possible for the programmer to update parts of the webpage without reloading the whole page, thus increasing the browser’s performance and providing the user with a responsive experience.
Increasing the Productivity: The helper functions provided in AJAX library help increase productivity while decreasing frustration. The well configured ASP.NET application has its own data access as well as business layer and the application also includes a UI layer where the server side operations are performed. After inclusion of these layers, only an additional AJAX specific services layer is needed which leads to reduction in deployment cost and increment in productivity.
Reducing Bandwidth and Increasing Speed: With AJAX you can cut down on the load from network and bandwidth usage while retrieving only the data required giving quicker interface and better response time. AJAX makes use of client-side scripting to communicate with web server and exchange data.
Multiple Compatibility: AJAX is compatible with most of the languages like ASP.NET, J2EE, PHP etc and also supports most of the Browsers like Internet Explorer 5.0 and up, Mozilla Firefox, Safari etc.
Asynchronous Processing: Since, asynchronous data retrieval can be done with ease by the use of XmlHttpRequest, requests can be handled efficiently and dynamic loading of content takes the performance of application to newer altitudes.
Navigating Ease: Applications on AJAX can be built to transition easily from the webpage to the user without the use of back and forward buttons used in the earlier versions.
But there are some CONS as well:
Security Threats: AJAX leads to the increment in the size of the code, which further leads to difficulty in debugging and severe threats to security.
Increment of load on Web Server: Adding of auto-update option leads to an increase on the load on server due to updates which take place every few seconds.