You are hereBlogs / luano's blog / Whither JavaFX?
Whither JavaFX?
The JavaFX challenge is over and luckily I won a minor prize, but hey - congratulations to those who won big.
In fact congratulations to anyone who managed to submit an entry! My feeling is that JavaFX is still a bit premature and under developed.
I started out with the real goal of learning JavaFX and really seeing what it was up to, after all it is one thing reading about a technology and another actually using it. I also wanted to try out some things I thought would be a good fit for JavaFX. I ended up being very frustrated on a number of fronts.
Some of the core features are very nice, well implemented and simple to use. Take binding for instance, it is a really winner, saving lots of coding and making some idioms more intuitive. On the other hand things like layout resizing barely work, quite surprising when you recall the layout mantra that went with Swing.
Other features, like the Swing integration are dumbfounding and just downright disappointing, specially given the paucity of JavaFX components and widgets.
What No tooling???
Chris Oliver, JavaFX's creator started the whole shebang, as "GBTDS which stood for 'GUI Builder That Doesn't Suck'." because he "just wanted an easy way of creating GUI's". Well, I guess not building and tools is one way of achieving that!
That's not to say there are no tools, but just not any that fit the GBTDS label, and I know Tor Norbye is working on the next latest, and greatest GUI Builder but to be honest I don't think Sun's track record is good, so I'll believe in it when I see it, and when I can actually use it. It just too darn expensive to play with never-never tools.
You gotta be kiddying? 1.2 at last minute
So just as the JavaFX challenge closed, Sun released JavaFX 1.2, so what I hear you say - well it isn't compatible with the earlier version and broke a whole bunch of things. I guess that may just have been a consequence of the impending JavaOne showcase, or just unfortunate timing, but it certainly didn't impress me as an evaluator of the technology. I know backward compatibility is a hard case to crack at times, but there was no evident upgrade strategy - it just seemed to be chucked over the wall.
Whither Swing
So this is a blog about JavaFX, right? Yes, but I can't help feeling sad that Sun didn't choose to invest the JavaFX effort into Swing. They had a couple of nice desktop and GUI frameworks on the boil and were begining to have an impact, but chose to change tacks with JavaFX.
In ways I can understand that, Swing has lots of baggage, but I see very little in JavaFX that couldn't been done with Swing just as easily. JavaFX, could I think have leveraged lots of this and been a language with declarative support for Swing and the rest of Java without having to reinvent so much.
Even if I'm wrong in all of that, JavaFX has done serious damage to Swing. Even if Sun provides maintenance for Swing the lack of development means that Swing is effectively dead or at least on the critical list. The saving grace may be that Swing is open source and mature, perhaps enough so that it can survice independently.
Whither FX
Where to now for JavaFX? In my view Sun don't have much time left to make an impact. Adobe and Microsoft are stealing the show and mobile, once Java's preserve is being rapidly colonized by Flex, Android and others. The next version of JavaFX must sing!
Whither Oracle
Does Oracle have a need or interest in JavaFX? They seem barely interested in the desktop let alone a mobile platform, but I could see a place for JavaFX if they really wanted an end-to-end platform. However, JavaFX might just be too much even for Oracle. Moving a behmoth like Oracle to JavaFX and displacing the incumbent GUI technologies barely seems practical never mind likely.
If Oracle doesn't back JavaFX wholeheartedly would you bet the farm and develop you next application on such a platform in the current economic climate. I don't know about you, but the choice seems clear to me.
So long JavaFX, so long Java on the desktop?
I would love if Sun had developed something more or a hybrid or even something more fullfilling (even in pure language terms) than JavaFX, or even if they had created a more complete and compelling offering, but thy haven't. I'll give then benefit of the doubt and say that I may reevaluate if I hear good stories of JavaFX, but I'll be slow to jump in.
Java and moreover the Java platform can work really well on the desktop. A Java desktop is attractive insofar as one can leverage many of the same skills as on the server side and one can gain a certain coherence between the two.
At the end of the day Java is just another language, Swing is just another framework and the desktop is just another metaphor. There are many ways to build great applications and GUIs. What I believe is key is innovation and the cost of realizing that innovation as deliverable product. There's lots of innovation and development on the JVM and in the greater Java space so I have no fear that Java will remain relevant.
JavaFX just doesn't float my boat, the quest continues...
- luano's blog
- Login or register to post comments