Apache Flex

Last updated
Apache Flex
Developer(s) Apache Software Foundation and Adobe Systems
Initial releaseJune 20, 2004;19 years ago (2004-06-20)
Stable release
4.16.1 / November 23, 2017;6 years ago (2017-11-23)
Repository Flex Repository
Written in ActionScript, Java [1]
Operating system Windows, macOS, Linux, Android, iOS, BlackBerry Tablet OS
Available inVarious between websites
Type Software development kit application
License 2012: Apache-2.0
2008: MPL-1-1
Website Apache Flex and Adobe Flex

Apache Flex, formerly Adobe Flex, is a software development kit (SDK) for the development and deployment of cross-platform rich web applications based on the Adobe Flash platform. Initially developed by Macromedia and then acquired by Adobe Systems, Adobe donated Flex to the Apache Software Foundation in 2011 [2] and it was promoted to a top-level project in December 2012.

Contents

The Flex 3 SDK was released under the MPL-1.1 license in 2008. Consequently, Flex applications can be developed using standard Integrated development environments (IDEs), such as IntelliJ IDEA, Eclipse, the free and open source IDE FlashDevelop, as well as the proprietary Adobe Flash Builder.

In 2014, the Apache Software Foundation started a new project called FlexJS to cross-compile ActionScript 3 to JavaScript to enable it to run on browsers that do not support Adobe Flash Player and on devices that do not support the Adobe AIR runtime. [3] [4] In 2017, FlexJS was renamed to Apache Royale. [5] [6] The Apache Software Foundation describes the current iteration of Apache Royale as an open-source frontend technology that allows a developer to code in ActionScript 3 and MXML and target web, mobile devices and desktop devices on Apache Cordova all at once. [7] Apache Royale is currently in beta development stage. [8]

Overview

Flex uses MXML to define UI layout and other non-visual static aspects, ActionScript to address dynamic aspects and as code-behind, and requires Adobe AIR or Flash Player at runtime to run the application. [9]

Versions

Macromedia Flex 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$15,000 per CPU. [10] Required for deployment, the Java EE application server compiled MXML and ActionScript on-the-fly into Flash applications (binary SWF files). Each server license included 5 licenses for the Flex Builder IDE.

Adobe Flex 2

Adobe Flex (old icon) Adobe Flex 4 icon.png
Adobe Flex (old icon)

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 solely with 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 latest ECMAScript 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 the Mozilla Public License. [11] 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.

Adobe Flash Builder and Flex 4

Adobe released Flex 4.0 (code named Gumbo) on March 22, 2010. [12] The Flex 4 development environment is called Adobe Flash Builder, [13] formerly known as Adobe Flex Builder.

Some themes that have been mentioned by Adobe and have been incorporated into Flex 4 are as follows:

Flash Builder is available in two versions: Standard and Premium, [15] the premium adds the following features;

Adobe Flash Builder 4.5 and Flex 4.5

May 3, 2011, Adobe shipped Flash Builder 4.5 copying Flex 4.5 (SDK only) which delivers full support for building Flex and ActionScript applications for Google Android, as well as support for building ActionScript applications for BlackBerry Tablet OS and Apple iOS. An update to Flash Builder 4.5 and Flex 4.5 adds support for building Flex applications for BlackBerry Tablet OS and Apple iOS.

Flex 4.5 SDK delivers many new components and capabilities, along with integrated support in Flash Builder 4.5 and Flash Catalyst CS 5.5. With the Adobe Flex 4.5 SDK which is governed by three main goals:

Adobe Flex 4.6.0

In November 2011, Adobe released Flex SDK update 4.6, with the following changes:

Apache Flex 4.8.0 - incubating

Jul 25, 2012, Apache Flex community releases Flex 4.8.0-incubating and it as a parity release with Adobe Flex 4.6.0. This is the first release under the incubator of the Apache Software Foundation and represents the initial donation of Adobe Flex 4.6 by Adobe System Inc. [16]

Differences and highlights include:

Apache Flex 4.9.0

Jan 11, 2013, Apache Flex community releases Flex 4.9.0. This is the first release since Apache Flex became a top level project of the Apache Software Foundation. [17]

Differences and highlights include:

Apache Flex 4.9.1

Feb 28, 2013, Apache Flex community releases Flex 4.9.1. This was a minor update to 4.9.0. [18]

Apache Flex 4.10.0

Aug 6, 2013, Apache Flex community releases Flex 4.10.0. [19]

Differences and highlights include:

Apache Flex 4.11.0

Oct 28, 2013, Apache Flex community releases Flex 4.11.0. [20]

Differences and highlights include:

Apache Flex 4.12.0

Mar 10, 2014, Apache Flex community releases Flex 4.12.0. [21]

Differences and highlights include:

Apache Flex 4.12.1

May 3, 2014, Apache Flex community releases Flex 4.12.1 [23]

Differences and highlights include:

Apache Flex 4.13.0

Jul 28, 2014, Apache Flex community releases Flex 4.13.0. [24]

Differences and highlights include:

Apache Flex 4.14.0

Jan 28, 2015, Apache Flex community releases Flex 4.14.0

Differences and highlights include:

Apache Flex 4.15.0

Jan 11, 2016, Apache Flex community release Flex 4.15.0 [26]

Differences and highlights include:

Apache Flex 4.16.0

Mar 14, 2017, Apache Flex community release Flex 4.16.0 [27]

Differences and highlights include:

LiveCycle Data Services

LiveCycle Data Services (previously called Flex Data Services) is a server-side complement to the main Flex SDK and Flash 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 capabilities to Flex applications.

BlazeDS

Previously available only as part of Adobe LiveCycle Data Services ES, Adobe plans to contribute the BlazeDS technologies to the community under the LGPL v3. BlazeDS gives Adobe developers free access to the remoting and messaging technologies developed by Adobe.

Concurrent with pre-release of BlazeDS, Adobe is publishing the AMF binary data protocol specification, on which the BlazeDS remoting implementation is based, and is attempting to partner with the community to make this protocol available for major server platforms.

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 web applications, although its intended purpose is for rich forms only.[ citation needed ]

Application Frameworks

There are a number of application frameworks available which help the developer solve some common tasks and set up the application structure according to best practices.

Notable sites using Flex

See also

Related Research Articles

<span class="mw-page-title-main">Adobe Flash</span> Discontinued multimedia platform used to add animation and interactivity to websites

Adobe Flash is a discontinued multimedia software platform used for production of animations, rich internet applications, desktop applications, mobile apps, mobile games, and embedded web browser video players.

<span class="mw-page-title-main">NetBeans</span> Integrated development environment software for software development

NetBeans is an integrated development environment (IDE) for Java. NetBeans allows applications to be developed from a set of modular software components called modules. NetBeans runs on Windows, macOS, Linux and Solaris. In addition to Java development, it has extensions for other languages like PHP, C, C++, HTML5, and JavaScript. Applications based on NetBeans, including the NetBeans IDE, can be extended by third party developers.

<span class="mw-page-title-main">WebObjects</span> Java web application server and framework originally developed by NeXT Software

WebObjects is a discontinued Java web application server and a server-based web application framework originally developed by NeXT Software, Inc.

<span class="mw-page-title-main">Adobe ColdFusion</span> Rapid Web app development platform

Adobe ColdFusion is a commercial rapid web-application development computing platform created by J. J. Allaire in 1995. ColdFusion was originally designed to make it easier to connect simple HTML pages to a database. By version 2 (1996) it had become a full platform that included an IDE in addition to a full scripting language.

<span class="mw-page-title-main">ActionScript</span> Object-oriented programming language created for the Flash multimedia platform

ActionScript is an object-oriented programming language originally developed by Macromedia Inc.. It is influenced by HyperTalk, the scripting language for HyperCard. It is now an implementation of ECMAScript, though it originally arose as a sibling, both being influenced by HyperTalk. ActionScript code is usually converted to byte-code format by a compiler.

SWF is a defunct Adobe Flash file format that was used for multimedia, vector graphics and ActionScript.

MXML is an XML-based user interface markup language first introduced by Macromedia in March 2004. Application developers use MXML in combination with ActionScript to develop rich web applications, with products such as Apache Flex.

A Rich Internet Application is a web application that has many of the characteristics of desktop application software. The concept is closely related to a single-page application, and may allow the user interactive features such as drag and drop, background menu, WYSIWYG editing, etc. The concept was first introduced in 2002 by Macromedia to describe Macromedia Flash MX product. Throughout the 2000-s, the term was generalized to describe browser-based applications developed with other competing browser plugin technologies including Java applets, Microsoft Silverlight.

A user interface markup language is a markup language that renders and describes graphical user interfaces and controls. Many of these markup languages are dialects of XML and are dependent upon a pre-existing scripting language engine, usually a JavaScript engine, for rendering of controls and extra scriptability.

Adobe Flash Player is computer software for viewing multimedia content, executing rich Internet applications, and streaming audio and video content created on the Adobe Flash platform. It can run from a web browser as a browser plug-in or independently on supported devices. Originally created by FutureWave under the name FutureSplash Player, it was renamed to Macromedia Flash Player after Macromedia acquired FutureWave in 1996. It was then developed and distributed by Adobe as Flash Player after Adobe acquired Macromedia in 2005. It is currently developed and distributed by Zhongcheng for users in China, and by Harman International for enterprise users outside of China, in collaboration with Adobe.

Adobe Media Server (AMS) is a proprietary data and media server from Adobe Systems. This server works with the Flash Player and HTML5 runtime to create media driven, multiuser RIAs. The server uses ActionScript 1, an ECMAScript based scripting language, for server-side logic. Prior to version 2, it was known as Flash Communication Server. Prior to version 5, it was known as Flash Media Server. In February 2019, Adobe Systems Incorporated granted Veriskope Inc rights to further develop, resell, and extend distribution of the software product.

<span class="mw-page-title-main">Adobe AIR</span> Cross-platform runtime system for building rich web applications

Adobe AIR is a cross-platform runtime system currently developed by Harman International, in collaboration with Adobe Inc., for building desktop applications and mobile applications, programmed using Adobe Animate, ActionScript, and optionally Apache Flex. It was originally released in 2008. The runtime supports installable applications on Windows, macOS, and mobile operating systems, including Android, iOS, and BlackBerry Tablet OS.

Action Message Format (AMF) is a binary format used to serialize object graphs such as ActionScript objects and XML, or send messages between an Adobe Flash client and a remote service, usually a Flash Media Server or third party alternatives. The Actionscript 3 language provides classes for encoding and decoding from the AMF format.

<span class="mw-page-title-main">Adobe Flash Builder</span> Integrated development environment

Adobe Flash Builder is an integrated development environment (IDE) built on the Eclipse platform that speeds development of rich Internet applications (RIAs) and cross-platform desktop applications, particularly for the Adobe AIR platform. Adobe Flash Builder 4 is available in two editions: Standard and Premium.

NS Basic is a family of development tools developed and commercially marketed by NSB Corporation in Toronto, Ontario, Canada for iOS, Android, Microsoft Windows, MacOS, Linux, BlackBerry OS, WebOS, Newton OS, Palm OS, Windows CE and Windows Mobile.

<span class="mw-page-title-main">Away3D</span>

Away3D is an open-source platform for developing interactive 3D graphics for video games and applications, in Adobe Flash or HTML5. The platform consists of a 3D world editor, a 3D graphics engine, a 3D physics engine and a compressed 3D model file format (AWD).

CrossBridge is an open-source toolset developed by Adobe Systems, that cross-compiles C and C++ code to run in Adobe Flash Player or Adobe AIR. Projects compiled with CrossBridge run up to 10 times faster than ActionScript 3 projects. CrossBridge was also known as "Alchemy" and the "Flash Runtime C++ Compiler", or "FlasCC".

<span class="mw-page-title-main">Powerflasher FDT</span>

Powerflasher FDT is an integrated development environment (IDE) built on the Eclipse platform for development of Adobe Flash-based content.

References

  1. "Apache Flex SDK - GitHub". GitHub . Retrieved 2014-06-27.
  2. "Adobe donates Flex to Apache". Techworld . Retrieved 2011-11-17.
  3. "FlexJS - An introduction". 21 October 2014. Archived from the original on 16 December 2016. Retrieved 3 May 2018.
  4. @ApacheFlex (April 22, 2018). "Did you know we're creating the..." (Tweet) via Twitter.
  5. "FlexJS is now Apache Royale - Transpiled - AS3Lang Community". Archived from the original on 2018-05-04.
  6. "Apache Flex Development - [DISCUSS] Name of the FlexJS Fork | Page 5". Archived from the original on 2018-05-04.
  7. "Apache Royale™ - Code once. Run everywhere".
  8. Rovira, Carlos (2020-05-15). "Apache Royale v0.9.7 released!". Apache Royale. Retrieved 2021-02-18.
  9. "Adobe Flex 4.6 * Using Adobe Flex". Help.adobe.com. Retrieved 2013-07-21.
  10. Krill, Paul. "Adobe pumps up rich Internet apps with Flex 2". NetworkWorld. Retrieved 4 August 2014.
  11. "Adobe keeps Flash, Flex close to the vest". Zdnet. Archived from the original on 2008-02-07. Retrieved 2008-02-09.
  12. "Adobe Flash Builder 4: features". Adobe.com. 2009-07-14. Archived from the original on 2010-12-03. Retrieved 2010-12-04.
  13. Brimelow, Lee (2009-05-15). "A much needed name change (Adobe Flash Builder)". leebrimelow.com. Archived from the original on 2014-08-21. Retrieved 2014-06-27.
  14. "Adobe Labs - Text Layout Framework". Labs.adobe.com. Archived from the original on 2010-12-04. Retrieved 2010-12-04.
  15. "Flex: Upgrade details". Adobe. 2009-07-14. Archived from the original on 2010-12-03. Retrieved 2010-12-04.
  16. "Apache Flex 4.8.0-incubating Released".
  17. "Apache Flex 4.9.0 Released!".
  18. "Apache Flex 4.9.1 Released!".
  19. "Apache Flex 4.10 Released!".
  20. "Apache Flex 4.11 Released!".
  21. "Apache Flex 4.12.0 Released!".
  22. "Apache Flex 4.12.1 Release Notes". Archived from the original on June 27, 2014.
  23. "Apache Flex 4.12.1 Released!".
  24. "Apache Flex SDK 4.13.0 released".
  25. "Apache Flex 4.13 Release Notes". Archived from the original on 2014-08-21.
  26. "Apache Flex 4.15 Released! : Apache Flex". blogs.apache.org. Retrieved 2016-02-13.
  27. "Apache Flex 4.16.0 Released! : Apache Flex" . Retrieved 2017-03-14.
  28. "Paint Color Visualizer". Sherwin-Williams. 2011-10-17. Retrieved 2013-07-21.