Ajax and Web Applications
Client Server Technology and Web Applications
There is a gap in user experience between desktop applications and web applications. Desktop applications run on a single computer, while web applications run on the Internet. Since the invention of the Web, developers have been trying to design web applications that demonstrate the speed and interactivity of applications running on the client machine of a LAN (Local Area Network). Despite the explosion of web based applications in the 1990’s (and continuing today), many users still prefer desktop applications. Like web sites, desktop applications access up to date information by connecting to the Web through the Internet.
However, desktop applications are designed with a much more refined sensibility and use PC power to customize requests from information stored on the desktop. This user experience is significantly better than when using remote web sites. Many are arguing that desktop applications will be the next wave in the Internet revolution.
So, with desktop applications breathing down their necks, web applications need to keep up the pace. Web applications are accessed by web browsers and run over a network, like the Internet. They are popular because of the power dominance of web browsers serving as thin clients. The most popular web browsers are Internet Explorer, Mozilla Firefox, Safari, Opera, and Netscape. Thin clients are client applications or devices that simply initiate requests and provide input. They do very little of the processing, letting the server handle the heavy lifting by forwarding requests and contacting different nodes and networks. Web applications are responsible for web based e mail applications like Hotmail, online shopping sites, online auction sites, wikis, and blogs.
In traditional client server computing, every application contained a client program that provided the user interface (UI) through which users would interact with/make requests from the applications. Each client program had to be installed individually on each user workstation. Web applications are different.
What is Ajax?
How does Ajax Work?
Ajax adds a layer to web application communication models. As previously stated, in traditional web applications communication between the browser/client and the web server occurred directly between these two components using HTTP requests. When users/clients request web pages, the server sends all the HTML and CSS code at once. If the user enters information into this page and requests more servers, the entire page must be loaded again. When using Ajax, the page is only loaded once. Any processing or modification caused by additional user input occurs in real time.
The engine allows these bits or responses to be displayed without reloading the entire page. This makes web pages and web applications much more responsive since only the necessary information is communicated between clients and servers instead of the entire page. This process imitates the responsiveness of desktop applications. Similarly, Ajax conducts all HTTP requests in the background, preventing user disruption. Users can continue working while the page sections are requested and delivered. With Ajax, the user interface is much more closely connected to application logic.
Advantages and Disadvantages of using Ajax
Because Ajax applications are more difficult to build than classic web applications, they must contain certain advantages that make them worth it. Applications built with Ajax have much more responsive interfaces. Users experience changes in a way that feels instantaneous. In traditional web applications, multiple connection threads are used to speed up deliveries between client and server. But this only affects content. All scripts and format information are communicated through a single connection thread, which negatively impacts performance. Ajax uses multiple connections to load basic scripts and CSS files; the rest is requested as content.
Again, responsiveness and timesaving are some of the most important features of Ajax. Visitors no longer have to wait for the page to be entirely re built and re sent when they make new requests. Only relevant content changes and users can still interact with the web site. There is also protection from errors. When an error is identified on a web page section, the rest of the page is unaffected and entered data is not lost. Ajax use also reduces server traffic and bandwidth use because the entire information doesn’t need to be sent with every new request.
The primary disadvantages include increased development time and costs, even though using Ajax can be more difficult to use when building applications rather than traditional client server web applications. However, this is tempered by the fact that most of the technologies that make up Ajax are already known. Ajax’s asynchronous nature can also cause conflict because it interferes with traditional ways of navigating the web and book marking sites.