2 AJAX Styles: Enriching Web Apps vs. Rich Internet Apps
Filed under: Web
When I wrote about AJAX Hysteria in 2005, shortly after Jesse James Garret coined the term, I suggested that AJAX will be a complement to classic web applications. While this is still true, I have come that AJAX will actually at least partly replace the traditional server roundtrips. There saw some evidence when I had a look at ExtJS (thanks to Zoob), but when Andreas told me about SproutCore and Cappucino I knew that AJAX was able to create full-fledged applications.
But back to the 2 styles of AJAX: The enriching web apps style is for enhancing traditional websites (therefore it is also called “progressive enhancement”). Instead of having static elements on the page, JavaScript (or call them AJAX) libraries render lists as accordions or create animated navigation menus. Nevertheless, if JavaScript is not available, these websites degrade gracefully, and will even on Lynx produce some readable output. The enrching webapp style can be implemented by libraries like JQuery, Scriptaculous, Mootools, etc. Personal sidenote: I am a big fan of JQuery.
The Rich Internet Application (RIA) style is different. The term RIA was introduced by Macromedia in 2002 in a white paper about Flex, which saw RIAs to overcome the classic request-response page rendering model (among other criteria). Apparently, this works really well also with standards-based technologies now. RIAs leverage JavaScript for CSS and DOM manipulation in the browser, and AJAX calls to the server back-end. With the latest frameworks (SproutCore and Cappuccino) it is also possible to use proper software engineering techniques like design patterns, unit testing, etc. On its website SproutCore claims to bring the feel of desktop application development to the web. The down-side of the rich internet application style is that they are following the WWW principles anymore, for example they are less accessible than enriched web applications, back-buttons are considered an issue, to work around, etc. Also this is all still very new, so these frameworks do not have extensive documentation, etc.
At the end of the day it is important to know what you need. Do you need to create a website or an application? Today I think, the two style will co-exist, let’s talk about that again in two years time.
What do you think about the these styles? Or are there more?
Oct 6, 2008 at 21:55 | Permalink
Leave a Comment
Some HTML allowed:
<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <code> <em> <i> <strike> <strong>
Trackback this post | Subscribe to the comments via RSS Feed