Apache Flex
Adobe Flex is an umbrella term for a group of technologies initially released in March of 2004 by Macromedia to support the development and deployment of rich internet applications based on their proprietary Macromedia Flash platform.
Traditional application programmers found it challenging to adapt to the animation metaphor upon which the Flash Platform was originally built. Flex seeks to minimize this problem by providing a workflow and programming model that is familiar to application developers.
Flex was initially released as a J2EE application or JSP tag library that compiles Flex Mark-Up Language (MXML) and ActionScript on-the-fly into Flash applications (binary SWF files). Later versions of Flex support the creation of static files that are compiled at authoring time and can be deployed online without the need for a server license.
The goal of Flex is to allow Web application developers to quickly and easily build Rich Internet Applications, otherwise known as RIAs. In a multi-tiered model, Flex applications serve as the Presentation Tier.
Flex features development of graphic user interfaces using an XML based language called MXML. Flex comes with various components and features that make capabilities such as web services, remote objects, drag and drop, sortable columns, charting/graphing, built in animation effects, and other interface interactions simple. Since the client only loads once, application workflow is significantly improved versus HTML based applications (eg. PHP, ASP, JSP, CFMX) which require executing templates on the server with every action. Flex's language and file structure are seeking to decouple application logic from design.
The Flex server also acts as a gateway to allow the client to communicate with XML Web Services and Remote Objects (such as Coldfusion CFCs, Java Classes, and anything else that supports the Action Message Format).
Commonly mentioned as alternatives to Flex are OpenLaszlo and Ajax technologies.
Initial Releases ( Flex Server 1.0 and 1.5 )
Initial releases of Flex were targeted towards the enterprise application development market, and were priced around US$15000 per CPU. Each license included 5 Flex Builder licenses.
Adobe Flex 2
Flex 2 changes the licensing model to open room to a free version of the technology, called "Flex Framework".
The new Flex Builder 2 is based on the Eclipse IDE. Enterprise-oriented services will continue to be available for those who require advanced features such as data push and automated testing.
Flex 2 introduces the use of a new version of the ActionScript scripting language, Actionscript 3, and requires Flash Player 9 or later for the runtime.
Flex is the first Macromedia product to be rebranded as Adobe.
Flex and ColdFusion
Macromedia embeds a subset of Flex 1.5 into its Coldfusion MX 7 middleware platform, for use in Flash forms. It is possible to use this framework to write rich internet applications, although its intended purpose is for rich forms only and this functionality is not supported by Macromedia.
Flex Application Development Process
Everything below is directly sourced from the help file in version 2.0 Beta 3:
- Define an application interface using a set of pre-defined components (forms, buttons, and so on)
- Arrange components into a user interface design
- Use styles and themes to define the visual design
- Add dynamic behavior (one part of the application interacting with another, for example)
- Define and connect to data services as needed
- Build the source code into a SWF file that runs in the Flash Player
Release history
- Flex 1.0 - March 2004
- Flex 1.5 - October 2004
- Flex 2.0 (Alpha) - October 2005
- Flex 2.0 Beta 1 - February 2006
- Flex 2.0 Beta 2 - March 2006
- Flex 2.0 Beta 3 - May 2006
- Flex 2.0 FINAL - June 28, 2006