I know Flex pretty good but also started to use Java FX. I am a little bit confused. Java FX seems to focus more on low level drawing operations and animations. Less on creating standard UIs like Flex.
So is JavaFX more like Flash than Flex?
On the other side JavaFX also supports Swing components as well as data binding, which makes it appear more like Flex.
I think JavaFX is more like Flex, because JavaFX is more about building applications than animations (which is, I gather, one of the sensitive distinctions between Flex and Flash).
I think of JavaFX and Flex as the future heirs to Rich Internet Application programming. They're both intended to stretch the realm of what's possible with RIA.
One of the biggest benefits of JavaFX that I see is that you can use your existing Java business logic by simply importing it.
Some of the language features, such as binding and duration as a data type, are paradigm-shifting, because they make certain functionality possible and readily available:
I would like to add few points,
Flex is far more stable then JavaFX, JavaFX is fairly new.
JavaFX syntax is really bad, its unnecessarily complex, where else flex is pure xml, one can read and understand easily, I didnt understand what made java guys think that instead of using xml (like silverlight and flex), making new language syntax will shock the world? New syntax means new learning curve.
Flex runs on flash, 95% installations world wide, only 1.2MB of Flash download compared to JavaFX + Java runtime of minimum 30 mb, this is too big consideration for publisher.