Facilitating the Spread of Knowledge and Innovation in Professional Software Development

Write for InfoQ


Choose your language

InfoQ Homepage News JavaFX and Adobe Flex Insider Shares Thoughts

JavaFX and Adobe Flex Insider Shares Thoughts

Leia em Português

This item in japanese


Chet Haase of Adobe Systems, who previously worked at Sun on the JavaFX team, shared the following comparisons of JavaFX and Adobe Flex on the Yahoo FlexCoder group.

  • Maturity: One of the reasons that you haven’t heard much about JavaFX to date is that it’s actually not yet released. Supposedly this will happen in the very near future, so maybe we’ll all hear more about it at that time.
  • Language: Although many of the underlying capabilities of JavaFX rely on the Java SE platform, JavaFX itself is based on a new scripting language (not Java, not JavaScript, not ActionScript, but a new scripting language entirely). One notable differences between the languages of JavaFX and Flex is that Flex uses MXML for its declarative aspects, and ActionScript for the programmatic aspects. The JavaFX language combines both of these elements, having aspects of declarative and programmatic in the same code.
  • GUI capabilities: Both platforms offer GUI components, graphics, animation, and databinding capabilities, thought the platforms differ widely in syntax and capabilities of these different features.
  • Tooling: Most of the tooling so far announced for JavaFX are more on the code developer side; editing plugins for NetBeans, plus export plugins for Illustrator and Photoshop (they produce PNG files from the layers in the project). On the Flex side, there’s the FlexBuilder IDE and the in-development tools such as Flash Catalyst for designer/developer workflows and FXG roundtrip import/export from/to the CS tools including Catalys for the graphics tags in the Gumbo release of the SDK.
  • Runtime availability: The availability of the JavaFX runtime is basically that of the Java platform (if a user’s machine does not have the proper release of Java (I believe it will require the latest updated 10 release), they will need to download/install it). The availability of Flex is basically that of the Flash platform of the appropriate version (e.g., Gumbo will run on FlashPlayer 10).

Chet does acknowledge that the view from the inside can be different, and offers the following query on how others view the platforms.

I would be curious to find out how others view the platforms, especially from the standpoint of external application developers...

In the past, InfoQ covered Chet’s departure for Adobe, and has featured him in both interviews and video.

Rate this Article


Hello stranger!

You need to Register an InfoQ account or or login to post comments. But there's so much more behind being registered.

Get the most out of the InfoQ experience.

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p

Community comments

  • Flash Player 9

    by Christopher Brind,

    Your message is awaiting moderation. Thank you for participating in the discussion.

    In the quoted extract Chet's final point might be construed as Flex having a dependency on Flash Player 10.

    Note that while Gumbo requires Flash Player 10 most people are building apps with Flex 2 or 3 which requires Flash Player 9. Flash Player 9 is (allegedly) installed on "most" computers.

  • Re: Flash Player 9

    by Darren Smith,

    Your message is awaiting moderation. Thank you for participating in the discussion.

    Penetration of Flash Player 9 is 97.7% so I'd say that's definitely "most" computers:

  • JavaFX Runtime

    by anthony rogers,

    Your message is awaiting moderation. Thank you for participating in the discussion.

    JavaFX 1.0 will run on JRE 1.5 and greater, for new plugin features there is a requirment of the new java plugin that ships with jre 1.6-u10. Hope that helps?

  • Re: Flex for multi channel?

    by Darren Smith,

    Your message is awaiting moderation. Thank you for participating in the discussion.

    From the BlazeDS developers guide:

    "Flex components use channel sets, which contain one or more channels, to contact the server. You can automatically or manually create and assign a channel set to a Flex component. The channel allows the component to contact the endpoint, which forwards the request to the destination."

    BlazeDS is Adobe's open-source server-based Java remoting and web messaging technology:

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p