OK, so recall my note from last month on Sun's de-funding of SwingX, and how this indicates the ascendancy of JavaFX as Java's preferred UI. Well, this gets elaborated in a much more interesting fashion by Richard Bair in an interview on Kirill Grouchnikov's always great Pushing Pixels blog. Here's the key bit, as Bair fields a question on whether he think backwards compatibility has held Swing back:
No I don't. If you gave up backwards compatibility you'd have a whole other set of issues that are many times worse. The level of risk one developer is willing to take isn't the same as another. For every one person who wishes we'd ditch backwards compatibility there are another 50 that would be violently opposed when that advice rendered their applications (or development of future versions of their applications) inoperable. Especially with a technology as mature as Swing. To those people who say we should make a Swing2 which is not backwards compatible, I would say, this is exactly what we're doing with JavaFX.
That last statement shows the breadth of Sun's ambitions for Java FX. It's not just for RIAs -- or, perhaps more accurately, the distinction between desktop apps and RIA will cease to me meaningful, because you'll use Java FX as a graphical front-end for both. Speaking personally -- as a Mac user in particular -- the rough sample Java FX apps I've played with have UIs much more attractive than any previous Java app I've used. Java's attempts to ape the OS X UI are always pretty risible; it's better on Windows but not by much. The Java FX UIs don't even try, and are much easier to use and look at as a result. But I'm not a programmer, so I have no idea how much more complicated that UI programming has just become.
JavaFX = Swing 2.0
You want opinions, you get it. And sorry for the strong words, but I'm near to exploding ...
(what analogy, btw?): for everybody not having their eyes blinded by fx fud, it's quite obvious that the equation FX == Swing2 is a plain lie. As of now, they are different shoes, couldn't detect anything in fx that even reminds of Swing. If that's the plan for the future, that would be really cool. - including all the power and flexibility of Swing into FX with the freedom to drop leftovers from a decade. But beware: that's an ambitious, non-trivial, bold goal - a long way to go. Just repeating the equality like a mantra isn't enough ;-)
And I find it shocking that somebody somewhere even considers "pushing" swing developers into fx just because they need binding. Apart from that - concededly one of the big points - language level support there's a rarely anything the typical Swing dev needs. So pushing right now would be right down the abyss.
Jeanette
Swing
I am glad to hear that Swing is still considered at Sun. I can also understand that compatibility is handled on high priority.
It is only a few months ago, that I decided to develop in Java in the future and Swing (together with NetBeans Matisse GUI designer) was a pretty good reason for me.
Although there is a hype on RIA I still see plenty of good reasons for a "thick" desktop client. Many widely spread applications - even if transferring data through the internet) are still a "real" client (Firefox & Thunderbird, Skype, OpenOffice, FreeMind, iTunes - just to mention a few).
I also barely think that applications like SAP could run efficiently on a bare web or RIA basis.
Further RIA brings me in danger of browser crashes or hangups if an RIA produces infinite loops or memory leaks.
I am personally not that interested in "migrating Swing into JavaFX".
So please keep Swing(ing)!
Post new comment