Ph: 03302007
Accessibility

Flex Article

 

An architectural blueprint for Flex applications


Joe Berkovitz

Joe Berkovitz

joeberkovitz.com

Table of Contents

Comments
Created:
11 December 2006
User Level:
Intermediate, Advanced

Note: This article was created based on Flex 2. Minor changes in the description and code may be necessary before it can be applied to Flex 3.

In Flex, it's easy to make applications go. You've probably seen a number of examples. Go into Flex Builder, throw down some components, add some ActionScript functions to handle events, maybe a WebService or two, and bingo... you've got something that sort of works. The results are often amazing relative to the small amount of effort.

Is it all a little too easy to be true? That first proof-of-concept prototype comes together mighty fast in Flex, but what happens when you're building a production project that's ten times as ambitious? What happens when the boss finally looks at the prototype and asks for a bunch of changes after it's partly built? What happens when usability testing suddenly discovers a need to revamp the UI? What happens when your web services change from REST to SOAP? Can you write a robust working client before a server side even exists?

In short: Does the dream of easy Flex development crack up and fall apart when assaulted by real-world complexity, change, and schedule pressure? Well, it needn't—if you pay attention to the right details. A modest up-front investment in structuring your application thoughtfully will pay off later, big time, in the face of these challenges.

In this article, I'm going to share a high-level architecture for building real-world Flex applications, with the help of a complete working example application called ReviewTube. I've been building complex applications for almost three decades, which allows me a modest claim: I have made lots of mistakes. (Or, in President Reagan's classic formulation, "mistakes were made.") Somewhat less modestly, I claim to have learned from these mistakes over the years, and a lot of what I've learned can be applied to development with Flex. The architecture I describe below embodies many of these learned lessons, and the example application illustrates them concretely with working, documented code. I'll also throw in some useful Flex tips along the way.

See and experience the application.

Requirements

To complete this tutorial you will need to install the following software and files:

Adobe Flex 2

Sample files:

About the author

Joe Berkovitz is Chief Architect of Allurent, Inc., a company offering a suite of Flex-based online shopping applications. He has spent 28 years in the software profession as an architect, interface designer, and engineer. He was Chief Architect at startups Ruckus Network and Unveil Technologies. Before that he spent eight years at ATG developing many of the core components of that company's products, originating a number of key ideas with patents granted or pending. Prior to ATG, Joe worked at Houghton Mifflin; Stratus Computer; and Bolt, Beranek and Newman, among others. His experience includes consulting as well as product development. Joe has worked with such diverse clients as Harvard Business School, Sony, and BMG Music Club.



You are viewing a mobilized version of this site...
View original page here

Mobilized by Mowser Mowser