Macromedia today announced Flex 2, a major new release of its framework for building Web applications with rich, client-side Flash interfaces. Earlier this week, I had the opportunity to speak with Macromedia about the details of this upcoming release.
Flex 2 will include Flash Player 8.5, Flex Framework 2, Flex Builder 2, and Flex Enterprise Services 2. Although the updated software will not be ready for release until the first half of 2006, Macromedia plans to release alpha versions later this month, in conjunction with the MAX conference on October 16th.
Flash Player 8.5 will add a new ActionScript Virtual Machine (AVM2), supporting ActionScript 3.0 (AS3) — an updated version of the scripting language that will be compliant with the latest ECMAScript standard, including ECMAScript for XML (E4X). AVM2 will run a great deal faster than the existing AVM, and will support many advanced language features, most notably improved debugging and error reporting.
AVM2 will run alongside the existing AVM, and only Flash movies compiled for AS3 will run on this new VM. The downside of this architecture is that movies and components that use AS3 will not be interoperable with those that use AS2 (e.g. an AS3 movie that loads and displays a nested movie that uses AS2 will not be able to access functions and variables within that movie). For this reason, components compiled for existing versions of Flex will need to be recompiled to work with Flex 2.
Flex Framework 2 will be the upgraded library of classes and user interface components for this new release. It will be updated to take advantage of AS3, with cleaner APIs, and taking full advantage of the new effects introduced in Flash Player 8.
Flex Builder 2, previously code-named Zorn, will be the new IDE for Flex, rewritten from scratch to run on the Eclipse platform. As with the current version of Flex Builder, it will provide a split graphical view (with drag and drop GUI building) and code view (with full code hinting and debugging support). New in this release will be developer productivity features for managing “view states”, discrete modes of operation for Flex components.
While the current version of Flex costs some US$12,000, Flex 2 will cost less than US$1,000 for the basic components described above. Although you’re constrained to communicating with the server via XML data transfer and SOAP Web Services, you can certainly implement anything you can do with AJAX and DHTML, only with a richer GUI. What’s missing from the package is the server-side component of the Flex framework, which has been split into a separate product for Flex 2: Flex Enterprise Services 2.
Flex Enterprise Services 2 will come with the big per-CPU price tag, but will be significantly upgraded from the server-side facilities provided by Flex 1. The main focus of the enhanced package is the transparent availability of server-side resources (such as database records and enterprise services) within Flex applications.
Although the greatly reduced price tag for developers who don’t need the Enterprise Services package is welcome news, Macromedia does not plan to continue offering free non-commercial/non-institutional licenses as they now do with Flex 1. With students and hobbyist users having obtained free licenses and developed applications with Flex 1, they’ll either have to front up for a license to Flex 2, or be left out in the cold. This seems like a very unfortunate move to me, and I hope Macromedia will reconsider.
For more details on Flex 2, check out Macromedia’s introduction for developers.