We have been using GWT for rich web app development and find it to be a fairly good solution although sometimes we think the Swing-like approach is a poor abstraction and too tedious. I have been wondering if Flex would be another approach that may further allow us to get away from browser specific behavior but then I have been looking into JavaFX as well.
JavaFX is appealing because it isn't part of an commercial stack. How does it compare with Flex. Is Flex just like JavaFX with a head start or are they completely different?
On Nov 11, 11:42 am, Eric Winter <ejwin...@gmail.com> wrote:
> We have been using GWT for rich web app development and find it to be > a fairly good solution although sometimes we think the Swing-like > approach is a poor abstraction and too tedious. I have been wondering > if Flex would be another approach that may further allow us to get > away from browser specific behavior but then I have been looking into > JavaFX as well.
> JavaFX is appealing because it isn't part of an commercial stack. How > does it compare with Flex. Is Flex just like JavaFX with a head start > or are they completely different?
> Thanks, > E
They're rather different. For starters, Adobe Flex 2.0 is a very mature RIA solution that has been available since January 2007. Flex 1.0 appeared way back in March 2004, but it was in Flex 2.0 that a tipping point was reached in the progression of Flex RIA. And now Flex 3.0 is due to ship in 1st quarter 2008, which will incorporate many improvements in basic Flex but also will debut the AIR runtime.
In contrast, Microsoft Silverlight 1.0 is a media streaming solution that is the rough equivalent of what the Flash player was doing 3 years ago. The 1.1 version will start to delve into forms and controls, ala Flex - but right now it is in alpha. In terms of developing software as components - Flex is totaly there already. Silverlight is miles away from enabling this.
JavaFX is further behind the RIA curve than Silverlight. It is still at the stage of being more whitepaper-ware than software. It will start to take on some life when the Consumer JRE becomes available - is supposed to be in 1st quarter 2008. At that time we'll be able to begin to size JavaFX up as to how fit it is as a RIA solution.
That being said, scripting with the Flex MXML and ActionScript3 are very productive and easy to get going on. MXML has a great expressive power for doing forms in a declarative manner. It is much more concise than what equivalent imperative ActionScript3 would be. None-the-less, that is the advantage of MXML and ActionScript3. MXML gets translated into ActionScript3 so that it is a declarative lanaguage that can be said to be completely symmetric with respect to ActionScript3 and the Flex Framework classes. (My developers that have worked with the JavaFX script language say that it is a more disjoint experience than MXML/ActionScript3 in this regard.)
The ActionScript3 language is the ECMAScript 4 enhancement of JavaScript. The nice thing is that classes and interfaces are first class parts of the language, and the default manner of compilation is to enforce strong type checking. Hence Java programmers take to ActionScript3 very quickly indeed as there is very little mental translation stuff to deal with. The E4X feature is rather nice for dealing with XML formatted data transfer objects. The properties, events, and declarative data binding features of Flex set it heads and shoulders above the other solutions. This is what enables a true component-based approach.
BTW, I did some personal research stuff with GWT and had some of my developers do more extensive research prototypes. I very much appreciate the ingenuity of GWT as a solution attempt at embracing the native JavaScript/DOMs of the various browsers. However, we all quickly found it just didn't compare to what we could achieve with Flex. We've since dropped GWT and settled on Flex.
As Sun employee who is extremely passionate about client Java I try to stay out of these conversations because I would be a biased entrant and probably don't have much to add. However, I do want to correct one statement.
Java FX is not whitepaper-ware. There are alpha builds you can download *right now* and play with. It is certainly not ready for production quality apps, but it's not whitepaper-ware.
Java FX is also *not new*. Yes, the JavaFX Script parts are new and very alpha, but the core of JavaFX is JavaSE. Just as Flex is a relatively recent environment built on the mature Flash platform, JavaFX is a new environment built on the very stable and mature JavaSE platform. To say that JavaFX is completely new code is simply not true. The value of client Java will certainly improve once the Java6 Update N release is out (formerly called the Consumer JRE), but that doesn't change the fact that millions of people use reliable and robust client Java applications today; and this will only continue in the future.
> They're rather different. For starters, Adobe Flex 2.0 is a very > mature RIA solution that has been available since January 2007. Flex > 1.0 appeared way back in March 2004, but it was in Flex 2.0 that a > tipping point was reached in the progression of Flex RIA. And now Flex > 3.0 is due to ship in 1st quarter 2008, which will incorporate many > improvements in basic Flex but also will debut the AIR runtime.
> In contrast, Microsoft Silverlight 1.0 is a media streaming solution > that is the rough equivalent of what the Flash player was doing 3 > years ago. The 1.1 version will start to delve into forms and > controls, ala Flex - but right now it is in alpha. In terms of > developing software as components - Flex is totaly there already. > Silverlight is miles away from enabling this.
> JavaFX is further behind the RIA curve than Silverlight. It is still > at the stage of being more whitepaper-ware than software. It will > start to take on some life when the Consumer JRE becomes available - > is supposed to be in 1st quarter 2008. At that time we'll be able to > begin to size JavaFX up as to how fit it is as a RIA solution.
> That being said, scripting with the Flex MXML and ActionScript3 are > very productive and easy to get going on. MXML has a great expressive > power for doing forms in a declarative manner. It is much more concise > than what equivalent imperative ActionScript3 would be. None-the-less, > that is the advantage of MXML and ActionScript3. MXML gets translated > into ActionScript3 so that it is a declarative lanaguage that can be > said to be completely symmetric with respect to ActionScript3 and the > Flex Framework classes. (My developers that have worked with the > JavaFX script language say that it is a more disjoint experience than > MXML/ActionScript3 in this regard.)
> The ActionScript3 language is the ECMAScript 4 enhancement of > JavaScript. The nice thing is that classes and interfaces are first > class parts of the language, and the default manner of compilation is > to enforce strong type checking. Hence Java programmers take to > ActionScript3 very quickly indeed as there is very little mental > translation stuff to deal with. The E4X feature is rather nice for > dealing with XML formatted data transfer objects. The properties, > events, and declarative data binding features of Flex set it heads and > shoulders above the other solutions. This is what enables a true > component-based approach.
> BTW, I did some personal research stuff with GWT and had some of my > developers do more extensive research prototypes. I very much > appreciate the ingenuity of GWT as a solution attempt at embracing the > native JavaScript/DOMs of the various browsers. However, we all > quickly found it just didn't compare to what we could achieve with > Flex. We've since dropped GWT and settled on Flex.
Very nice comparison Roger! Josh, I guess what it boils down to is what is there now and what has proven itself productive, JavaFX simply isn't and hasn't. It's the same thing with Swing App Framework and Beans Binding, it's certainly going to be an improvement when its stable and mature (de-facto if you will) but right now I am not so sure I have saved much from using both, I should probably have chosen NetBeans RCP instead.
/Casper
On Nov 12, 11:01 am, Joshua Marinacci <jos...@gmail.com> wrote:
> As Sun employee who is extremely passionate about client Java I try > to stay out of these conversations because I would be a biased > entrant and probably don't have much to add. However, I do want to > correct one statement.
> Java FX is not whitepaper-ware. There are alpha builds you can > download *right now* and play with. It is certainly not ready for > production quality apps, but it's not whitepaper-ware.
> Java FX is also *not new*. Yes, the JavaFX Script parts are new and > very alpha, but the core of JavaFX is JavaSE. Just as Flex is a > relatively recent environment built on the mature Flash platform, > JavaFX is a new environment built on the very stable and mature > JavaSE platform. To say that JavaFX is completely new code is simply > not true. The value of client Java will certainly improve once the > Java6 Update N release is out (formerly called the Consumer JRE), but > that doesn't change the fact that millions of people use reliable and > robust client Java applications today; and this will only continue in > the future.
> Okay, back to the fray. :) > Josh
> On Nov 12, 2007, at 9:00 AM, RogerV wrote:
> > They're rather different. For starters, Adobe Flex 2.0 is a very > > mature RIA solution that has been available since January 2007. Flex > > 1.0 appeared way back in March 2004, but it was in Flex 2.0 that a > > tipping point was reached in the progression of Flex RIA. And now Flex > > 3.0 is due to ship in 1st quarter 2008, which will incorporate many > > improvements in basic Flex but also will debut the AIR runtime.
> > In contrast, Microsoft Silverlight 1.0 is a media streaming solution > > that is the rough equivalent of what the Flash player was doing 3 > > years ago. The 1.1 version will start to delve into forms and > > controls, ala Flex - but right now it is in alpha. In terms of > > developing software as components - Flex is totaly there already. > > Silverlight is miles away from enabling this.
> > JavaFX is further behind the RIA curve than Silverlight. It is still > > at the stage of being more whitepaper-ware than software. It will > > start to take on some life when the Consumer JRE becomes available - > > is supposed to be in 1st quarter 2008. At that time we'll be able to > > begin to size JavaFX up as to how fit it is as a RIA solution.
> > That being said, scripting with the Flex MXML and ActionScript3 are > > very productive and easy to get going on. MXML has a great expressive > > power for doing forms in a declarative manner. It is much more concise > > than what equivalent imperative ActionScript3 would be. None-the-less, > > that is the advantage of MXML and ActionScript3. MXML gets translated > > into ActionScript3 so that it is a declarative lanaguage that can be > > said to be completely symmetric with respect to ActionScript3 and the > > Flex Framework classes. (My developers that have worked with the > > JavaFX script language say that it is a more disjoint experience than > > MXML/ActionScript3 in this regard.)
> > The ActionScript3 language is the ECMAScript 4 enhancement of > > JavaScript. The nice thing is that classes and interfaces are first > > class parts of the language, and the default manner of compilation is > > to enforce strong type checking. Hence Java programmers take to > > ActionScript3 very quickly indeed as there is very little mental > > translation stuff to deal with. The E4X feature is rather nice for > > dealing with XML formatted data transfer objects. The properties, > > events, and declarative data binding features of Flex set it heads and > > shoulders above the other solutions. This is what enables a true > > component-based approach.
> > BTW, I did some personal research stuff with GWT and had some of my > > developers do more extensive research prototypes. I very much > > appreciate the ingenuity of GWT as a solution attempt at embracing the > > native JavaScript/DOMs of the various browsers. However, we all > > quickly found it just didn't compare to what we could achieve with > > Flex. We've since dropped GWT and settled on Flex.
This isn't entirely accurate. Yes JavaFX Script is a new language but it's riding on a tried and true platform (JavaSE) with over a decade of work behind it, and a huge ecosystem of toolsets and libraries. All of that can be used from a JavaFX application. Okay, so it's hard to imagine a JavaFX application that'd want to use CORBA but the ability is there.
On Nov 12, 12:00 am, RogerV <rog...@qwest.net> wrote:
> JavaFX is further behind the RIA curve than Silverlight. It is still > at the stage of being more whitepaper-ware than software. It will > start to take on some life when the Consumer JRE becomes available - > is supposed to be in 1st quarter 2008. At that time we'll be able to > begin to size JavaFX up as to how fit it is as a RIA solution.
On Nov 12, 7:05 pm, robogeek <reiki...@gmail.com> wrote:
> This isn't entirely accurate. Yes JavaFX Script is a new language but > it's riding on a tried and true platform (JavaSE) with over a decade > of work behind it, and a huge ecosystem of toolsets and libraries.
How is that inacurate? Flex has been around (with a pervasive no- nonsence runtime) since 2004. A simple search on Google reveals a ton of examples of Flex in production environments:
I think it depends on what you are comparing. VM, tooling, APIs, programming model, RIA platform as a whole, etc. However for a longer list of public Flex sites, check out:
http://flex.org/showcase
----- Original Message -----
From: javaposse@googlegroups.com <javaposse@googlegroups.com>
To: The Java Posse <javaposse@googlegroups.com>
Sent: Mon Nov 12 11:24:52 2007
Subject: [The Java Posse] Re: Looking for Advice: Flex or JavaFX
On Nov 12, 7:05 pm, robogeek <reiki...@gmail.com> wrote:
> This isn't entirely accurate. Yes JavaFX Script is a new language but
> it's riding on a tried and true platform (JavaSE) with over a decade
> of work behind it, and a huge ecosystem of toolsets and libraries.
How is that inacurate? Flex has been around (with a pervasive no-
nonsence runtime) since 2004. A simple search on Google reveals a ton
of examples of Flex in production environments:
I don't really know that much about "flex" apps, but have some experience with flash. In summary, I would say the tooling for developers is at best ordinary (presumably designers love CS3 - I hate it) - BUT, and its a big but, the end result is fantastic for end users. The attention to detail on loading times, bandwidth, and the easy access to audio/video (microphones etc) is amazing. Adobe seem to have their priorities right and it shows.
On Nov 13, 6:29 am, "James Ward" <jaw...@adobe.com> wrote:
> I think it depends on what you are comparing. VM, tooling, APIs, programming model, RIA platform as a whole, etc. However for a longer list of public Flex sites, check out:http://flex.org/showcase
> -James
> ----- Original Message ----- > From: javaposse@googlegroups.com <javaposse@googlegroups.com> > To: The Java Posse <javaposse@googlegroups.com> > Sent: Mon Nov 12 11:24:52 2007 > Subject: [The Java Posse] Re: Looking for Advice: Flex or JavaFX
> On Nov 12, 7:05 pm, robogeek <reiki...@gmail.com> wrote: > > This isn't entirely accurate. Yes JavaFX Script is a new language but > > it's riding on a tried and true platform (JavaSE) with over a decade > > of work behind it, and a huge ecosystem of toolsets and libraries.
> How is that inacurate? Flex has been around (with a pervasive no- > nonsence runtime) since 2004. A simple search on Google reveals a ton > of examples of Flex in production environments:
> I don't really know that much about "flex" apps, but have some > experience with flash. In summary, I would say the tooling for > developers is at best ordinary (presumably designers love CS3 - I hate > it) - BUT, and its a big but, the end result is fantastic for end
The Flex Builder is a plugin for Eclipse. This provides for a visual forms design tool that enables convenient switching back and forth from visual design mode to MXML source code mode.
The Flex 2 version is not bad and developers have no problem being quite productive with it.
However, in a recent Flex training class we got a lot of exposure to the Flex Builder in Flex 3 - there a lot of nice enhancements. We also found out that we can go ahead and use the beta Flex Builder of Flex 3 and yet target the Flex 2.0 SDK. So it pays to switch to Flex Builder 3 right now - the beta is entirely stable enough.
> > I don't really know that much about "flex" apps, but have some > > experience with flash. In summary, I would say the tooling for > > developers is at best ordinary (presumably designers love CS3 - I hate > > it) - BUT, and its a big but, the end result is fantastic for end
> The Flex Builder is a plugin for Eclipse. This provides for a visual > forms design tool that enables convenient switching back and forth > from visual design mode to MXML source code mode.
> The Flex 2 version is not bad and developers have no problem being > quite productive with it.
> However, in a recent Flex training class we got a lot of exposure to > the Flex Builder in Flex 3 - there a lot of nice enhancements. We also > found out that we can go ahead and use the beta Flex Builder of Flex 3 > and yet target the Flex 2.0 SDK. So it pays to switch to Flex Builder > 3 right now - the beta is entirely stable enough.