In the two-plus years its been around, Adobe Systems Adobe Flex has undergone more than two-and-a-half version releases, which has probably made developers who use the rich Internet platform feel as if they have been riding on a particularly unpredictable and gnarly wave.
eWEEK Labs review of the bare-boned and limited Flex 1.0 release showed that the application probably should have been a beta. The 1.5 release added stability to the platform, but it had all the growing pains typical of a 1.0 release.
Despite these shortcomings, Flex has been attractive to developers, who appreciate its simple coding structures and data handling; its strong presentation layer; and, most important, its tight association with the ubiquitous Flash format.
With the July release of Version 2, Flex looks like it finally may be gaining the maturity and stability it needs to become a major platform for creating powerful Web-enabled applications. However, theres a potential wipeout in store for some users: Developers hoping to leverage the new features will have to migrate their existing Flex applications to Version 2.
Platform Shift
The flex builder environment is now based on the Eclipse development platform. And eWeek Labs tests show that Adobe has done a good job of integrating Flex Builder into Eclipse. Development of Flex applications is now easier than ever, and the ability to move between drag-and-drop design and pure code environments let us build each part of our applications in the best possible environment.
For example, in the design view, we could drag and drop components to our application layout and quickly build the basic presentation for an application. In the coding view, all the expected code assistants were available to help in directly editing application code; style sheet information; and Flex-specific code, such as ActionScripts.
Probably the biggest weakness of Flex Builder, which is priced at $499, is the fact that it runs only on Windows, which is rare among Adobe applications and especially surprising considering that Eclipse itself is cross-platform.
The other main component of the Flex 2 platform is Flex Data Services, which basically replaces the Flex Presentation Server of previous Flex releases. Unlike Flex Builder, the Flex Data Services component is impressively cross-platform: It runs on Windows, Linux and Unix servers and works with most major Java application servers.
Flex Data Services has some basic monitoring and administration tools (created in Flex) that are available from a browser. For the most part, however, Flex Data Services exists mainly to deploy and run Flex applications and add enterprise-level data integration and connectivity.
Most of the new capabilities of Flex Data Services deal with better data management and integration. One interesting addition is that it is now possible to build real-time collaboration applications within Flex. Using this feature, we were able to create applications that would let users see changes live, as a colleague made them. Flex Data Services is priced starting at $20,000 per processor; a free developer version, Flex Data Services Express, is also available.
Theres no doubt Flex Builder and Flex Data Services make creating Flex applications easier and make the applications themselves more enterprise-capable, but it is possible to get started creating Flex applications without having to shell out a dime for these components. The freely available Flex SDK (software development kit) includes all the compilers, debuggers and code necessary to create Flex applications and now can also be used to create stand-alone, serverless Flex applications.
The Flex SDK for Version 2 also includes many new components and improved themes and templates for application creation.
While creating Flex applications will be familiar to anyone used to building Web applications and Web services, there is still a decent layer of complexity for newcomers. We found the Flex Developer Center at www.adobe.com/devnet/flex to be extremely useful for finding samples, walk-throughs and other aids for navigating Flex.
Labs Director Jim Rapoza can be reached at [email protected].
Evaluation Shortlist
Adobes Flash
While Flash is a sibling of Flex, pure Flash-based applications are a valid alternative to Flex apps in many areas (www.adobe.com/flash)
AJAX applications
The currently trendy AJAX (Asynchronous JavaScript and XML) offers a simple, standards-based method to build graphical applications that will run in most Web browsers
Laszlo Systems OpenLaszlo
Based on a formerly commercial rich Internet application platform, OpenLaszlo uses standard languages and Flash to build applications (www.openlaszlo.org)