http://en.wikipedia.org/wiki/Rich_Internet_Application\
Rich Internet Application
From Wikipedia, the free encyclopedia.
Rich Internet Applications (RIA) are a cross between web applications and traditional desktop applications, transferring some of the processing to the client end.
RIA's typically:
* run in a web browser, not requiring installation.
* run locally in a secure environment called a sandbox
* can be "occasionally connected" wandering in and out of hot-spots or from office to office
The term "Rich Internet Application" was introduced in a Macromedia whitepaper in March 2002.
Contents [showhide]
1 Comparison to standard web applications
2 Justifications
3 Methods
3.1 JavaScript
3.2 Macromedia Flash Player
3.3 Future techniques
4 See also
5 External links
[edit]
Comparison to standard web applications
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 that data 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 circumvent this slow loop. It should be noted that Internet standards have evolved slowly and continually over time to accommodate these techniques, so it is hard to draw a strict line between what constitutes an RIA and what does not. Usually what can be done in an RIA is limited by the capabilities of the system used on the client.
Because RIAs take advantage of the client's CPU, they offer real-time user-interface options that are not possible with the standard HTML widgets available to browser-based Web applications. This richer functionality may include anything that can be implemented in the system being used on the client side (see below), including "drag and drop," using a slider to change data, calculation that happens on the client (e.g., an insurance rate calculator) and do not need to be sent back to the server, etc.
[edit]
Justifications
Although developing applications to run in a web browser is a much more limiting, difficult, and intricate a process than developing a regular desktop application, the efforts are often justified because:
* installation is not required -- updating and distributing the application is an instant process
* users can use the application from any computer with an internet connection
* as web usage increases, computer users are becoming less willing to go to the trouble of installing new software if a browser-based alternative is available
This last point is often true even if this alternative is slower or not as feature-rich. A good example of this phenomenon is webmail.
[edit]
Methods
[edit]
JavaScript
The first major client side language and technology available with the ability to run code and installed on a majority of web clients was JavaScript. Although its uses were relatively limited at first, combined with layers and other developments in DHTML it has become possible to piece together an RIA system without the use of a unified client-side solution. Ajax is a new term coined to refer to this combination of techniques and has recently been used most prominently by Google for projects such as Gmail and Google Maps. However, creating a large application in this framework is very difficult, as many different technologies must interact to make it work, and browser compatibility requires a lot of effort.
The company Backbase (
http://www.backbase.com/) offers a lightweight client-side engine in JavaScript with which you can create RIA pages using declarative XHTML + Backbase XML, allowing one to quickly create a working application and avoiding much of the aforementioned browser incompatibility problems.
[edit]
Macromedia Flash Player
Macromedia is one vendor in this area, whose Macromedia Flash technology includes Flash Communications Server, Central, Breeze and Flex, all of which are run in viewers' browsers within the Macromedia Flash Player which has a 98% penetration with current internet users.
Laszlo is an open source platform for rich Internet applications, originally developed by Laszlo Systems (
http://www.laszlosystems.com) which also produce SWF files to be played at runtime in the Macromedia Flash Player.
[edit]
Future techniques
As more browsers support the Web standard for scriptable SVG, the user interface of RIAs can become richer.
The Mozilla Foundation's XML-based user interface markup language XUL could be used in RIAs, though it would be restricted to Mozilla-based browsers, since it is not a de facto or de jure standard.
Using XML and XSLT along with some XMTHL, CSS and JavaScript can also be used to generate richer client side UI components like data tables that can be resorted locally on the client without going back to the server. Mozilla browsers support this, as does IE6 when MSXML4.0 is downloaded and installed on each client PC. We'll likely have to wait until Microsoft's next O/S release to see XML and XSLT processing take off on the client side.
[edit]
See also
* Thick vs Thin clients
[edit]
External links
* IDC report on RIAs (
http://download.macromedia.com/pub/solutions/downloads/business/idc_impact_of_rias.pdf) (requires registration)
* Original March 2002 requirements for Rich Internet Applications: ( 500K PDF (
http://download.macromedia.com/pub/flash/whitepapers/richclient.pdf) or HTML abstract (
http://www.markme.com/jd/archives/007312.cfm) )
--
FROM 218.104.71.*