Sunday, August 3, 2008

Rich Internet Application (RIA)-An Overview

A Rich Internet Application provides a great experience for its users. It should be easy to use, engaging, and targeted to perform its task very well. To many (RIAs) are web applications that have the features and give application experience of traditional desktop applications. RIAs typically transfer the processing necessary for the user interface to the web client but keep the bulk of the data (i.e. the state of the program, the data, etc.) back on the application server.

RIAs typically do the following:

Run in a web browser (Multiple applications through one interface.
Run locally in a secure environment called a sandbox

The best example of RIA is http://www.google.com/ which not only offers search services but offers many application interface like blogger, Orkut, Images, Reader etc from same browser.

Traditional web applications centered all activity around a client-server architecture with a thin client. Under this system all processing is done on the server, and the client is only used to display static (in this case HTML) content. The biggest drawback with this system is that all interaction with the application must pass through the server, which requires data to be sent to the server, the server to respond, and the page to be reloaded on the client with the response. By using a client side technology which can execute instructions on the client's computer, RIAs can circumvent this slow and synchronous loop for many user interactions.

All RIAs share one characteristic: they introduce an intermediate layer of code, often called a client engine, between the user and the server. This client engine is usually downloaded as part of the instantiation of the application, and may be supplemented by further code downloads as use of the application progresses. The client engine acts as an extension of the browser, and usually takes over responsibility for rendering the application's user interface and for server communication.

There are many technologies that are used to create RIA application. Some of the User friendly, easy to use technologies are
Adobe Flex, AJAX, Silverlight, Java FX etc.


No comments: