dagblog.
← Archive

The evolution of web applications through rich internet applications


As demands keep growing, many of today’s web applications are running up against
 the limits of the technology their clients provide, 
 in the form of web browsers.

HTML became the language those clients understand. It’s primarily suited 
 to describing general information, and its options for richer descriptions
 in more complex user interfaces are very limited. 
 Even the many supporting technologies such as DOM, ECMAScript, and CSS don’t change that fact.

Interaction between users and a web application presents further problems, because each change in state
 brings another reload of the whole page. Add in the need to handle 
 things like the back, forward, and reload buttons, and you inevitably
 have to work to keep information around through session management or by laboriously
 passing state data back and forth.

In a multilayer architecture, solving these problems falls to the client, or in the case of 
 web applications, the browser. Extending the browser with a rich
 presentation layer (a Rich Client Presentation Tier) makes many of these problems solvable. It’s this 
 layer that transforms the ugly duckling into an application that’s easy and comfortable to use.

A rich presentation layer should offer logic for displaying content. It should also let the other parts 
 of the application communicate with the server independently of one another. This mechanism, based on 
 asynchronous messaging, is important for letting those parts behave autonomously. Add to that 
 an event-driven model that frees us from having to generate specific 
 HTML for every response.

Of course, I’ve only sketched a fraction of what a rich presentation layer does. Just as the middle tier evolved
 over time into its present form with all the design patterns that solve its problems, the rich presentation layer 
 has started to evolve and will continue to do so.

Web applications took off largely because web browsers became
 widespread. With rich applications, I expect the trend to follow one that
 Macromedia has started with Macromedia Flex, which represents that 
 rich presentation layer.

More information is available in the Macromedia Flex article Extending Design Patterns into RIA, which
 I heartily recommend reading.

Medium version

Related articles

Related CZ Podcast episodes