Problems in traditional web Applications
[ul class=”list list-minus_red_2″]
[li]Many round trips to the server[/li]
[li] Rendering of webpage is slower[/li]
[li] Increases the consumption of server resources[/li]
[li] Response time of application is very slower[/li]
[li] Rendering of data is static [/li]
[li] Data is updated of an application only when the user clicks on the browser refresh button[/li]
So the preceding is some of the basic problems related to the traditional web application so to overcome these problems Ajax is the best alternative. So let us start with the basics.
What is Ajax ?
AJAX allows web pages to be updated asynchronously by exchanging small amounts of data with the server behind the scenes. This means that it is possible to update parts of a web page, without reloading the entire page.
We can also define Ajax is a combination of client side technologies that provides asynchronous communication between the user interface and the web server so that partial page rendering occurs instead of complete page post back.
Using Ajax technologies we can observe in Google Maps, Gmail, YouTube, and Facebook tabs.
I hope you have understood the basic concepts of Ajax. Now let us see the following diagram showing how Ajax works:
AJAX is Based on Internet Standards
Let us know about the basic information each technology uses in Ajax.
1. XHTML and CSS
XHTML (or HTML) is used for providing the markup tags, as used in any typical web site. In addition, we utilize CSS for extra styling functionality in relation to presentation and layout. XHTML is a stricter and more standardized form of HTML, which follows the rules of XML such as the requirement for well-formatted and valid against a schema or DTD.
2. Document Object Model (DOM)
The Document Object Model is a platform and language independent standard object model for representing HTML or XML.
XML is typically used as the format for transferring data between the server and the client. Using XML we can represent any applicable data object structure we might wish to represent.
[ul class=”list list-star_blue”]
[li]In Ajax Client and Server Communication done with help of HttpRequest.[/li]
[li] AJAX applications are browser and platform independent. [/li]
I hope you have understood the basics concepts of Ajax. Now let us discus the relation between Ajax and ASP.Net Framework.
Ajax and ASP.Net Framework
ASP.NET AJAX integrates client script libraries with the ASP.NET 2.0 development framework. This new Web development technology extends ASP.NET, offering the interactive user interface benefits of AJAX with a programming model that is more familiar to ASP.NET developers, making it very easy to add AJAX to your applications quickly and with minimal effort.
Power of Ajax
[ul class=”list list-tick_blue”]
[li]The power of AJAX lies in its ability to communicate with the server asynchronously, using a XMLHttpRequest object without requiring a browser refresh. [/li]
Everything happens behind the scenes with a minimum request and response cycle without the knowledge of the user.
Advantages of AJAX based application
[ul class=”list list-tick_green”]
[li]Improved application performance by reducing the amount of data downloaded from the server[/li]
[li]Rich, responsive and Slick UI with no page flickers[/li]
[li]Eliminates frequent page refresh which usually happens in a typical request/response model (Everything is updated on fly)[/li]
[li]Easy to implement as there are variety of AJAX implementations available around[/li]
[li]AJAX mechanism works behind the scene nothing much required from user perspective[/li]
[li] Works with all browsers [/li]
[li] Avoids the round trips to the server[/li]
[li] Rendering of webpage faster[/li]
[li] Decreases the consumption of server resources [/li]
[li] Response time of application is very faster [/li]
[li] Rendering of data is dynamic[/li]
In this first part of article I have explained the basics of Ajax. In my next article of the series, Using Ajax Extension :Part-2, I will explain how to use Ajax Extension controls in an ASP.Net C# web application.