- Adobe Flex
Infobox Software
name = Adobe Flex
caption =
author =
developer =Adobe Systems
released = 1.0 / Released March 2004
latest release version = 3.0.0
latest release date = release date and age|2008|02|25
latest preview version =
latest preview date =
operating system = Windows,Mac OS X andLinux
platform =
language = English and Japanese
status = Committed
genre =Rich Internet application
license =Mozilla Public License (Flex Builder and Flash Player under commercial license)
website = [http://www.adobe.com/go/flex/ Adobe Flex Homepage]Adobe Flex is a collection of technologies released by
Adobe Systems for the development and deployment of cross platformrich Internet application s based on the proprietaryAdobe Flash platform. The initial release in March 2004 byMacromedia included asoftware development kit , an IDE, and a J2EE integration application known asFlex Data Services . Since Adobe acquired Macromedia in 2005, subsequent releases of Flex no longer require a license for Flex Data Services, which has become a separate product rebranded as LiveCycle Data Services.In February 2008, Adobe released the Flex 3 SDK under the
open source Mozilla Public License .Adobe Flash Player , the runtime on which Flex applications are viewed, andAdobe Flex Builder , the IDE built on the open source Eclipse platform and used to build Flex applications, remain proprietary.Overview
Traditional application programmers found it challenging to adapt to the animation
metaphor upon which the Flash Platform was originally designed. Flex seeks to minimize this problem by providing a workflow and programming model that is familiar to these developers.MXML , anXML -based markup language, offers a way to build and lay outgraphic user interface s. Interactivity is achieved through the use ofActionScript , the core language of Flash Player that is based on theECMAScript standard.The Flex SDK comes with a set of user interface components including buttons, list boxes, trees, data grids, several text controls, and various layout containers. Charts and graphs are available as an add-on. Other features like
web services , drag and drop, modal dialogs, animation effects, application states, form validation, and other interactions round out the application framework.In a multi-tiered model, Flex applications serve as the presentation tier. Unlike page-based HTML applications, Flex applications provide a stateful client where significant changes to the view don't require loading a new page. Similarly, Flex and Flash Player provide many useful ways to send and load data to and from server-side components without requiring the client to reload the view. Though this functionality offered advantages over HTML and JavaScript development in the past, the increased support for
XMLHttpRequest in major browsers has made asynchronous data loading a common practice in HTML-based development too.Technologies that are commonly compared to Flex include
OpenLaszlo , Ajax,XUL ,JavaFX andWindows Presentation Foundation technologies such asSilverlight .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
* Flex 2.0.1 - January 5, 2007
* Flex 3.0 Beta 1 - June 11, 2007
* Flex 3.0 Beta 2 - October 1, 2007
* Flex 3.0 Beta 3 - December 12, 2007
* Flex 3.0 - February 25, 2008
* Flex 3.1 - August 15, 2008Versions
Macromedia Flex Server 1.0 and 1.5
Macromedia targeted the enterprise application development market with its initial releases of Flex 1.0 and 1.5. The company offered the technology at a price around US$15000 per CPU. Required for deployment, the J2EE application server compiled
MXML andActionScript on-the-fly into Flash applications (binarySWF files). Each server license included 5 licenses for the Flex Builder IDE.Adobe Flex 2
Adobe significantly changed the licensing model for the Flex product line with the release of Flex 2. The core Flex 2 SDK, consisting of the command-line compilers and the complete class library of user interface components and utilities, was made available as a free download. Complete Flex applications can be built and deployed with only the Flex 2 SDK, which contains no limitations or restrictions compared to the same SDK included with the Flex Builder IDE.
Adobe based the new version of Flex Builder on the open source Eclipse platform. The company released two versions of Flex Builder 2, Standard and Professional. The Professional version includes the Flex Charting Components library.
Enterprise-oriented services remain available through Flex Data Services 2. This server component provides data synchronization, data push, publish-subscribe and automated testing. Unlike Flex 1.0 and 1.5, Flex Data Services is not required for the deployment of Flex applications.
Coinciding with the release of Flex 2, Adobe introduced a new version of the
ActionScript programming language, known as Actionscript 3, reflecting the latestECMAScript specification. The use of ActionScript 3 and Flex 2 requires version 9 or later of the Flash Player runtime. Flash Player 9 incorporated a new and more robust virtual machine for running the new ActionScript 3.Flex was the first Macromedia product to be re-branded under the Adobe name.
Adobe Flex 3
On
April 26 2007 Adobe announced their intent to release the Flex 3 SDK (which excludes the Flex Builder IDE and the LiveCycle Data Services) under the terms of theMozilla Public License . [cite web
url=http://blogs.zdnet.com/Burnette/?p=296
title=Adobe keeps Flash, Flex close to the vest
publisher=Zdnet
accessdate=2008-02-09] Adobe released the first beta of Flex 3, codenamed Moxie, in June 2007. Major enhancements include integration with the new versions of Adobe's Creative Suite products, support for AIR (Adobe's new desktop application runtime), and the addition of profiling and refactoring tools to the Flex Builder IDE.In October 2007, Adobe released the second beta of Flex 3.
On December 12, 2007, Adobe released the third beta of Flex 3.
On February 25, 2008, Adobe released Flex 3 andAdobe AIR 1.0.Adobe Flex 4
Adobe has announced that Flex 4.0 (code named Gumbo) will be released in
2009 . [http://opensource.adobe.com/wiki/display/flexsdk/Gumbo] Even though this announcement has been made, the product plan has yet to be completed.Some themes that have been mentioned by Adobe that will be incorporated into Flex 4 are as follows:
*Design in Mind: The framework will be designed for continuous collaboration between designers and developers.
*Accelerated Development: Be able to take application development from conception to reality quickly.
*Horizontal Platform Improvements: Compiler performance, language enhancements, BiDi components, enhanced text. (Speculation derived from Adobe Systems)
*Full Support for Adobe Flash Player 10
*Broadening Horizons: Finding ways to make a framework lighter, supporting more deployment runtimes, runtime MXML. (Speculation derived from Adobe Systems)Flex 4 milestones: (Speculation derived from Adobe Systems)
*Scope determined, April2008
*Beta 1, late2008
*4.0 final,2009 Thermo
On October 2nd, 2007, Adobe announced a new design tool related to Flex codenamed
Adobe Thermo .LiveCycle Data Services
LiveCycle Data Services (previously called Flex Data Services) is a server-side complement to the main Flex SDK and Flex Builder IDE and is part of a family of server-based products available from Adobe. Deployed as a Java EE application, LiveCycle Data Services adds the following capabilities to Flex applications:
* Remoting, which allows Flex client applications to invoke methods on Java server objects directly. Similar to Java remote method invocation (RMI), remoting handles data marshalling automatically and uses a binary data transfer format.
* Messaging, which provides the "publish" end of the "publish/subscribe" design pattern. The Flash client can publish events to a topic defined on the server, subscribe to events broadcast from the message service. One of the common use cases for this is real-time streaming of data, such as financial data or system status information.
* Data management services, which provides a programming model for automatically managing data sets that have been downloaded to the Flex client. Once data is loaded from the server, changes are automatically tracked and can be synchronized with the server at the request of the application. Clients are also notified if changes to the data set are made on the server.
* PDF document generation, providing APIs for generating PDF documents by merging client data or graphics with templates stored on the server.BlazeDS
Previously available only as part of Adobe LiveCycle Data Services ES, Adobe is announcing its plans to contribute the proven
BlazeDS technologies to the community under the LGPL v3. BlazeDS gives the rapidly growing Adobe developer community free access to the powerful remoting and messaging technologies developed by Adobe.Concurrent with this pre-release of BlazeDS, Adobe is publishing the AMF binary data protocol specification, on which the BlazeDS remoting implementation is based, and is committed to partnering with the community to make this protocol available for every major server platform. Both projects are in the Adobe Open Source page. The source code will be available for download early 2008 in the
Adobe Open Source Portal .Flex and ColdFusion
Flex 2 offers special integration with ColdFusion MX 7. The ColdFusion MX 7.0.2 release adds updated Flash Remoting to support ActionScript 3, a Flex Data Services event gateway, and the Flex Data Services assembler. Flex Builder 2 also adds extensions for ColdFusion providing a set of wizards for RAD Flex development. A subset of Flex 1.5 is also embedded into ColdFusion MX 7 middleware platform, for use in the ColdFusion Flash forms feature. It is possible to use this framework to write rich internet applications, although its intended purpose is for rich forms only.
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 an SWF file that runs in the Flash PlayerNotable sites using Flex
Notable sites using Flex include:
*Pikeo online photo sharing
*Amsterdam-Schiphol Airport
*Sherwin-Williams Color Visualizer
*Sony Ericsson Product Catalog
*Yahoo! Messenger for the Web
*Yahoo! Maps Web Mappingee also
*
Adobe AIR (formerly Adobe Apollo)
*Microsoft Silverlight
*OpenLaszlo
* TheZK Framework
*JavaFX References
External links
* [http://www.adobe.com/products/flex/ Official Adobe Flex site]
* [http://livedocs.adobe.com/flex/3/html/index.html Adobe Flex 3 Help]
* [http://flex.org/software/components List of APIs, Libraries & Components]
* [http://seantheflexguy.com/blog/2008/05/24/36-new-cool-flex-and-as3-tools-libraries-and-components/ Awesome collection of APIs, Libraries & Components]
* [http://www.adobe.com/devnet/flex/ Adobe Developer Connection for Flex]
* [http://opensource.adobe.com/wiki/display/flexsdk/Flex+SDK Official Open Source site for Flex]
Wikimedia Foundation. 2010.