2 Decades since it's introduction in 1997 ( I remember being forced to use it in a trading OMS application in 2002), Swing UI looks frozen in time, ugly as ever.
2 Decades since it's introduction in 1997 ( I remember being forced to use it in a trading OMS application in 2002), Swing UI looks frozen in time, ugly as ever.
Or, well, one could just use JGoodies ;)
Still it is a kind of first step.
Tooling was the major problem. Swing could be made to look as nice as WinForms, but defaults matter when developers are lazy.
Android is another example where if one wants to make cool Material design applications, some UI programming skill is needed.
Not reading such books, just meant many devs were totally unaware of how to do it.
The story of Swing.
There's a reason why Java completely failed on the desktop: Swing.
> Which do you care more about: it works, or it looks good?
Both. I care about both. And you should too.
But Swing developers got used to only being able to have one. At most.
Even if you can, you can count them on one hand. Swing was a massive failure, and rightfully so, because Swing/JavaFX apps look, and more importantly, feel, like a broken mess.
In contrast, SWT/JFace apps look a lot more native and feel extremely snappy. Apps build on the Eclipse RCP are in general pretty decent looking and they enable all the native controls and functionalities of the host platform.
Why? What value is looking good? There's value in a well designed responsive UX, but how it looks is completely meaningless to me because it doesn't help me get shit done.
If you are going for non-native widgets, they should at least look good. Otherwise you get the worst of both worlds.
In contrast, IBM took the native approach with SWT / JFace, and the interfaces written with that library look and feel infinitely more native and performant than Swing and JavaFX ever did and ever will.
The fact that Swing ended up being such a massive failure was in good parts due to the fact that Swing is built on top of AWT.