Apache Flex

Apache Flex, Adobe Flex previously, is a development framework for creating rich Internet applications (RIAs ) on the technical basis of the Adobe Flash Platform. In addition to the SDK released as open source, the framework consists of the fee-based Flash Builder ( since version 4, this was before Flex Builder), the LiveCycle Data Services and the Flex charting components. Although there already before the release of Flex was possible to create with Adobe Flash (formerly Macromedia) rich applications offered Flash as a tool not required by software developers from an IDE feature set, but was still mainly used by web designers and graphic artists. Flex should therefore specifically address software developers.

  • 2.1 Flex 2
  • 2.2 Flex 3
  • 2.3 Flex 4
  • 2.4 Further development of Flex
  • 3.1 Advantages
  • 3.2 disadvantages

Differences to Flash

Flex has several components that build a framework on the technology of the Adobe Flash Platform.

MXML and ActionScript

A Flex application is developed using the MXML markup language for the user interface and the ActionScript programming language for application logic. MXML is XML-based, with a developer describes the composition of the user interface from the visible and invisible components. The Flex compiler translates in an intermediate step, the MXML files in ActionScript source files that are compiled in further to a flash file. The developer can describe the user interface partially or completely imperative in ActionScript therefore without MXML. Changes to the composition of the user interface are therefore also possible during runtime.

LiveCycle Data Services

The LiveCycle Data Services ( formerly Flex Data Services) are the server component from the Flex 2 product line. About this service, the Flex application other server applications to address (for example, Java applications ). Parts of it are known as open source BlazeDS.

Flash Builder

The Flash Builder is an integrated development environment based on Eclipse and Flex. With it can be developed complete and complex ActionScript projects, both for use on websites as well as for the desktop. Graphical interfaces are described in Flash Builder with the XML-based language MXML, the Flash Builder Design View of a MXML code allows, with the mouse -assisted composition of user interfaces is possible. The Flash Builder is free of charge and is available in a standard and a professional version, which differ in the scope of available components for data processing and by the presence of certain profiling tools. The Professional version is, however, for schools for free (Adobe Flash Builder Pro for Education).

Adobe has announced that as part of the handover of Flex to the Apache Software Foundation 's design view of Flash Builder is no longer being developed.

Flex charting components

The Flex charting components ( Data Visualization ) are an extension of the Flex SDK. With these component diagrams can be represented in a simple and visually appealing way. The charting components are included since version 4 (previously only with Flex Builder 3 Professional).


Flex 2

The Flex Builder 1.5 publication was based on Dreamweaver MX 2004. Since version 2.0 of the Flex Builder is based on Eclipse 3.1. In this version, it is no longer necessary to have to compile the Flex application from a server. The compilation is now taking over the integrated development environment or command-line compiler of the Flex SDK. With Flex 2 also ActionScript 3 was introduced.

Flex 3

February 25, 2008 Adobe released Flex 3 The SDK itself is now available as a free download. In Flex 3 new additions are mainly the support of Adobe AIR as well as functions for profiling and refactoring.

Flex 4

Adobe has released 4 (codename Gumbo ) in March 2010 Flex. New is the "Spark" called component architecture and support for the FXG interchange format that will allow the release of Adobe Flash Catalyst an integrated workflow. With "Spark" layout model has been renewed and now allows the application of 2D and 3D animations based on components and the automatic reversal of transitions, the use of Pixel Bender filters and keyframebasierte animations. The status feature ( View States), which allows for different states of the application has been improved. The compiler performance is optimized. The ASDoc tool for the documentation of applications now supports ASDoc in MXML files. The DataBinding function now supports bidirectional communication and manipulation of data. The improved with Flash Player 10 text engine has been integrated into Flex. The HTML templates for embedding Flex applications in HTML are now based on the open source SWFObject method.

Further development of Flex

Adobe has released the Flex SDK, including the Spark components mentioned and the new Falcon compiler to the Apache Software Foundation, where it is actively developed. The development of the MXML designer in Flash Builder, the tools contained in the Creative Suite Adobe Flash Catalyst and introspection called data-centric development features was adjusted. In addition, Adobe does not want to sign their own runtime shared libraries that contain the Flex framework. In contrast to RSLs by third-party developers the RSLs from Adobe were precompiled and digitally signed because Adobe Flash Player so it can make all running simultaneously, regardless of their domain, are available. Own RSLs could be used only by applications of the same origin domain simultaneously.

Pros and Cons of Flex applications


  • Applications developed with Flex applications run on all platforms that have installed a Flash Player version of the same. The Flash Player is available for many operating systems available, so Flex applications are considered to be platform independent.
  • After the application is loaded, only data over the network to be replaced, which provides the developer as a business application data.
  • The Flex SDK is open source (Open Source) and since January 2013, a top-level project of the Apache Software Foundation.
  • FREE middleware for the Action Message Format (AMF) is present (eg BlazeDS for Java, FluorineFX for. NET, AMFPHP for PHP, WebORB for Ruby ) for all known web languages ​​.


  • The integrated development environment Flash Builder is chargeable. However, there are alternative development environments, such as FlashDevelop.
  • The LiveCycle Data Services are chargeable to more than one CPU.
  • The HTML output is inadequately supported.

Version History