Well swing and swt both use the local operating sytems system calls to render its widgets.
This doesn't look like local operating system widgets to me. Look at the tabs and the status bar. Eclipse suffers from the same oddities.
As for slow UI's a lot falls into the hands of the developer (as it is for any language). Take Azureus for example its UI runs at the same pace as any other windows application, because it was developed right
That's funny. I was going to mention Azureus as an app that is such a resource hog, it is virtually unusable. The fact that its UI suffers from a bad case of "programmers art" doesn't help. I mean, come on, look at this.
I just started it up and for fun with an empty queue (no uploads or download):
MacPro:~ Rickard$ ps -ux | grep Azureus
Rickard 3890 0.1 -2.6 725872 54896 ?? S 11:56AM 0:07.07 /Applications/Azureus.app/Contents/MacOS/JavaApplicationStub -psn_0_65536001
Rickard 3947 0.0 -0.0 18056 292 p1 R+ 11:59AM 0:00.00 grep Azureus
The sixth column is RSS (resident set size in kilobytes) which is what we're interested in. 54896 kilobytes for a torrent client? I fired up uTorrent in Parallels just to compare and it consumes only 4450 kilobytes. Now granted, Azureus has more features, but still.
I don't want to start a pissing contest, but I just don't see Java as a feasible client application development platform right now. When someone can trick me into running a Java app for some time without noticing it, maybe I'll change my mind.
"Programming is like sex: one mistake and you have to support it for the rest of your life."