InfoQ

News

JavaFX and Adobe Flex Insider Shares Thoughts

Posted by Jon Rose on Nov 19, 2008

Community
Java
Topics
Rich Client / Desktop ,
Rich Internet Apps ,
Web 2.0
Tags
Flash ,
JavaFX Mobile ,
Adobe ,
Adobe Integrated Runtime ,
JavaFX Script ,
Sun Microsystems ,
Flex

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.

Flash Player 9 by Christopher Brind Posted Nov 19, 2008 10:03 AM
Re: Flash Player 9 by Darren Smith Posted Nov 19, 2008 10:33 PM
Flex for multi channel? by Feby Thomas Posted Nov 20, 2008 12:00 AM
Re: Flex for multi channel? by Darren Smith Posted Nov 20, 2008 4:37 PM
JavaFX Runtime by anthony rogers Posted Nov 20, 2008 3:58 AM
  1. Back to top

    Flash Player 9

    Nov 19, 2008 10:03 AM by Christopher Brind

    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.

  2. Back to top

    Re: Flash Player 9

    Nov 19, 2008 10:33 PM by Darren Smith

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

    www.adobe.com/products/player_census/flashplaye...

  3. Back to top

    Flex for multi channel?

    Nov 20, 2008 12:00 AM by Feby Thomas

    How is the support from flex for multi channel access of the same application UI?

  4. Back to top

    JavaFX Runtime

    Nov 20, 2008 3:58 AM by anthony rogers

    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?

  5. Back to top

    Re: Flex for multi channel?

    Nov 20, 2008 4:37 PM by Darren Smith

    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:

    livedocs.adobe.com/blazeds/1/blazeds_devguide/b...

Educational Content

Brian Marick on 4 Challenges and 5 Guiding Values of Agile Software Development

Brian Marick takes us through a quick tour of the most important values and challenges to adopting Agile successfully (they aren't the typical challenges and values we hear in the community).

Are You a Software Architect?

The line between development and architecture is tricky. Does it exist at all? Is an ivory tower actually needed? There's a balance in the middle, but how do you move from developer to architect?

Agile – A Way of Life and Pragmatic Use of Authority

The word 'authority' sometimes produces an allergic response in hard-line agilists. Freedom and authority – both are bad if misused and both are good if used in right spirit for a noble cause.

Getting Started with Grails, Second Edition

"Getting Started with Grails" brings you up to speed on this modern web framework. Companies as varied as LinkedIn, Wired, and Taco Bell are all using Grails. Are you ready to get started as well?

Using ITIL V3 as a Foundation for SOA Governance

Those familiar with only ITIL V2 often scoff at the thought that ITIL could serve as a governance framework for SOA. With ITIL V3, the focus of the framework shifted towards service-orientation.

Adrian Colyer on AspectJ, tc Server and dm Server

SpringSource CTO Adrian Colyer discusses AspectJ, SpringSource's dm Server and tc Server products, OSGi and Scrum.

Adam Wiggins on Heroku

Heroku's Adam Wiggins talks about Rails, Background Jobs, Add-Ons, Ruby, and how Heroku manages to work around Ruby's inefficiencies using Erlang and other languages.

SOA as an Architectural Pattern: Best Practices in Software Architecture

For Grady Booch the foundation of a good architecture is patterns, SOA being just one of many patterns. In this Second Life presentation, Booch attempts to bring more clarity on what architecture is.