
Adobe
After building a couple of initial "getting started" applications with Macromedia Flex, developers often experience a feeling of liberation: all of a sudden, the all-too-well-known limitations of HTML for building applications disappear, and it’s hard not to get excited by the new possibilities and opportunities that the Macromedia Flex Rich Internet Applications platform unleashes. As a developer, you can finally build real applications for the client tier. While leveraging the ubiquitous and real-time deployment model of the web, these applications are neither cluttered with page refreshes nor limited to a handful of user interface controls. Furthermore, they can expose rich user interface metaphors such as drag and drop, and even access a local data storage area to work in an occasionally-connected mode.
The bottom line is that Rich Internet Applications are... applications. This also means that they have the same requirements as any other application: stability, robustness, extensibility, and reusability.
So, after the initial excitement, the next logical question often in the developer's mind is: "What’s the right way to architect larger scale, real-life Flex applications?" The short answer is that there is no reason to abandon the proven software engineering methodologies and practices that have governed application development for years.
This article provides a more detailed answer to this question, and describes how to build large-scale Flex applications using sound design patterns, such as the model-view-controller (MVC) architecture, and best practices, such as loose coupling of application components.
Christophe Coenraets is a Technical Evangelist for Adobe where he focuses on rich Internet applications and enterprise integration. He has been working on Flex since the early days of the product in 2003. In his previous role at Macromedia, Christophe worked on JRun, the company's J2EE application server. Before joining Macromedia, Christophe was managing Java and Internet applications evangelism at Sybase. Christophe has been a regular speaker at conferences worldwide for the last 15 years. He blogs at http://coenraets.org.