The Artima Developer Community
Sponsored Link

Java Community News
Adobe to Open-Source Flex SDK

5 replies on 1 page. Most recent reply: Apr 26, 2007 9:52 PM by Jayce Vaidyan

Welcome Guest
  Sign In

Go back to the topic listing  Back to Topic List Click to reply to this topic  Reply to this Topic Click to search messages in this forum  Search Forum Click for a threaded view of the topic  Threaded View   
Previous Topic   Next Topic
Flat View: This topic has 5 replies on 1 page
Frank Sommers

Posts: 2642
Nickname: fsommers
Registered: Jan, 2002

Adobe to Open-Source Flex SDK Posted: Apr 25, 2007 11:44 PM
Reply to this message Reply
Adobe's Flex is a client-side programming environment targeting the Flash virtual machine. Today Adobe announced that it will release subsequent versions of the Flex SDK under the Mozilla Public License. Artima spoke with Adobe's James Ward and Eli Greenfield about what open-source Flex means for developers.

Flex is Adobe's high-level programming environment for creating rich-client applications that run inside the Flash virtual machine. The Flex platform consists of five main components:

  • A class library written in the ActionScript 3 language, which is an implementation of the EcmaScript standard, and is substantially identical to the next-generation JavaScript. ActionScript is an object-oriented, functional language, and among its unique features is support for optional static typing. The Flex API is built atop the API of the Flash virtual machine, and effectively extends Flash's API with collections, utility classes, visual effect classes, and classes that define Flex-based applications. Many UI-related classes are part of the API, too, such as validators, formatters, and data binding.

  • A set of ActionScript components for creating rich graphical user interfaces. These include the standard fare of UI widgets, but also incorporate multimedia, such as easy access to the desktop's Web camera or microphone. Layouts and transition effects are included, too, as are a set of rich charting components.

  • ActionScript code generators and XML schemas that make it possible to compose complex user interfaces with an XML grammar, and then have the framework automatically generate the equivalent ActionScript code. Flex's XML language, MXML, exposes component properties via XML, reducing the amount of boilerplate code developers have to write and maintain. Most Flex applications are a mix of MXML and ActionScript code.

  • An ActionScript compiler that turns ActionScript into the bytecode format for the Flash Virtual Machine. The Flex compiler, in fact, performs a two-stage compilation: It first turns MXML code into ActionScript, and then compiles the ActionScript into Flash bytecode.

  • A set of server-side data integration components that were previously called Flex Data Services, but were recently re-christianed to Adobe LiveCycle. The server-side part of this framework is written in Java, and can run in enterprise Java servers. The client-side part integrates with data-aware Flex components. Since Flex applications can communicate data with services in a variety of other ways, too, such as via HTTP, direct socket connections, or by invoking Web services, Adobe LiveCycle is an optional Flex component.

The Flex SDK, which Adobe made available for free in 2006, includes the first four of these components, with the exception of Flex Charting, for which the company charges a license fee. Adobe also made available last year a version of Flex Data Services that runs on a single CPU, for free.

Today, Adobe announced that it is taking the additional step of releasing the next version of the Flex SDK under the open-source Mozilla license. Artima spoke with James Ward, Adobe's Flex evangelist, and Eli Greenfield, who is principal scientist of the SDK.

When asked how Adobe envisions the community adding value to Flex, Ward noted that Flex already enjoys a healthy open-source ecosystem, with major Flex projects, such as FlexUnit, released under open-source licenses.

He also noted that with the next version of the Flex SDK, slated for final release at the end of 2007, Adobe will first make the sources available via a Subversion repository, and will, over time, migrate to a model to include committers outside of Adobe, too.

According to Ward, Adobe chose the Mozilla license because the company has already been working with Mozilla on Project Tamarin, the source code for the Flash virtual machine that also includes the next-generation JavaScript interpreter to be used in future versions of Firefox and Mozilla.

According to Ward, Adobe's business model with Flex includes building some of its own software with Flex, such as the recently released Adobe Media Player; charging a license fee for the enterprise-ready version of Flex Data Services; and selling FlexBuilder licenses to developers. FlexBuilder is an Eclipse-based IDE for visually designing, coding, and debugging Flex applications.

When asked if Adobe intends to position Flex as a direct competitor to the now open-sourced client side portions of Java SE, Ward said that that was not the case, and that his company viewed Flex and Java as complementary technologies.

How do you think the open-source Flex SDK will influence client-side Java? Do you think it will hurt, or improve, client-side Java over time?

johny boyd

Posts: 28
Nickname: johnyboyd
Registered: Apr, 2007

Re: Adobe to Open-Source Flex SDK Posted: Apr 26, 2007 9:22 AM
Reply to this message Reply
So, Flex Data Services - FDS, will still remain closed.

Hopefully, Adobe will atleast make its pricing more
reasonable. Right now it jumps from free for single-CPU to
$10k/cpu for multi-cpu boxes. Not palatable for an ISV like
us who have no control over the machine on which our apps may be deployed.

On a related note, I'd like to know folks' experience in
developing Flex/Java apps without FDS - Will I need to
hand-roll a lot of stuff, or can I use any other libraries
to make this task easier?


nebiyu yohannes

Posts: 4
Nickname: neb
Registered: Jan, 2007

Re: Adobe to Open-Source Flex SDK Posted: Apr 26, 2007 11:49 AM
Reply to this message Reply
I'd like to piggyback johny's question above.

Can we use any of the open source flash servers to provide us what FDS provides? If an open source server like Red5 would work, is anyone out there using an open source server instead of FDS? What do you lose out on if you use an open source server instead of FDS?

James Ward

Posts: 42
Nickname: jlward4th
Registered: Jun, 2006

Re: Adobe to Open-Source Flex SDK Posted: Apr 26, 2007 12:02 PM
Reply to this message Reply
You might want to check out:

It doesn't provide all the features of FDS but from what I hear the remoting piece works well.


johny boyd

Posts: 28
Nickname: johnyboyd
Registered: Apr, 2007

Re: Adobe to Open-Source Flex SDK Posted: Apr 26, 2007 2:51 PM
Reply to this message Reply
Thanx James.

Anyone have any firsthand experience with this?


Jayce Vaidyan

Posts: 8
Nickname: finite42
Registered: Mar, 2007

Re: Adobe to Open-Source Flex SDK Posted: Apr 26, 2007 9:52 PM
Reply to this message Reply
MXML is interesting.

Using XML to describe UI and generating code to implement it or a library to use that description to build the UI on the fly seems to be very popular.

Consider Mozilla's XUL, or GNOME project's GladeXML (seems to support everything from C to Haskell(!!) for Gtk), or Microsoft's XAML (apparently, they also use it to describe things like workflows).

This approach seems to be really powerful. I played around with Glade, initially following the example from Gtk Java binding, but later realized that the UI can be used in most other Glade supported language with relatively simple changes.

Anything to make building UIs saner is "a good thing".

Wouldn't it be nice if there were a standard way to describe basic UI that could be used with any of the tools? :-) Of course, we can always wish :-)

Flat View: This topic has 5 replies on 1 page
Topic: Scott Ambler on Agile Myths Previous Topic   Next Topic Topic: Google Patches, Enhances MySQL

Sponsored Links


Copyright © 1996-2018 Artima, Inc. All Rights Reserved. - Privacy Policy - Terms of Use