Fog Creek Software
Discussion Board




Why I hate Swing

I'm using Poseidon Community Edition to create an UML diagram.
The damn thing is written in Swing. So, the interface froze for the past 3 minutes (literally) and I haven't saved my work. Now, is this a traditional app crash or Windows hickup or is this garbage collection?

ARGH!

RP
Friday, April 16, 2004

Actually I love Swing, but it's very annoying when the UI's lock-up.

RP
Friday, April 16, 2004

I found dancing the west coast swing a little easier.

son of parnas
Friday, April 16, 2004

The UI locks up because the developers didn't use threading.  This isn't a Swing specific problem.  It can be seen in Windows Explorer (refreshing a network drive), Outlook (when searching through your mail), and any other app that didn't use threading for time intensive tasks.

Matt
Friday, April 16, 2004

Did you check out Task Manager?

I use DBVisualizer, which is an SQL client written in java. Sometimes, it freezes for a long time, just like you said.

One day, I decided to take a look a the processes in Task Manager. DBViz was freezing because Mcshield (McAfee AV) was taking +/- 98% of processor time. Everything was responding slowly - Outlook, Opera, etc.

The next time I fired DBViz, I took a look at the Task Manager. The BDViz process doesn't even move for the first minute. It's all Mcshield activity. Scanning all the JARs, I guess.

Paulo Caetano
Friday, April 16, 2004

Threading or asynchronous I/O.

Dan Maas
Friday, April 16, 2004

Posiedin- last time I used it a few years ago sucked.  TogetherJ, also a swing app (at least a Java 2D app) was a little better but still intolerable on large diagrams.

I'm not sure why, but people who write Swing apps tend not to bother to optimize them and do the fairly simple things needed to make the UI seem responsive.  My Swing app doesn't do this kind of crap.  No need to blame the toolkit, which is one of the best around.  There is no excuse for jdk 1.4 swing apps being slow and unresponsive.  On windows they should be using graphics card acceleration.

I think the key here is that Java GUI developers should make their Swing apps look like windows apps.  Then, if performance sucks, the average windows dope will say "hey, this software sucks" instead of "hey Swing Sucks".

BTW, I find that the standard Microsoft Windows tools and Office also suck in a lot of ways.  For some reason that is considered just bugs in the software.

name withheld out of cowardice
Friday, April 16, 2004

Hmm, if I ever make a Java app, I'll need to test a classloader that lets me hide the .jar in some opaque format.  So the antivirus doesn't go nuts.

I wonder how much JGoodies mimics the various mswindows versions...

Tayssir John Gabbour
Friday, April 16, 2004

parnas:
> I found dancing the west coast swing a little easier.

Laff. Are you a lindy hopper by any chance?

Fred
Friday, April 16, 2004

Fred, i do not take drugs.

son of parnas
Friday, April 16, 2004

I've used Poseiden before too and yeah it sucks, but not because of Swing.  Swing is awesome.

Try Enterprise Architect (though it's not free) for a good UML tool for Java.

Crimson
Friday, April 16, 2004

> Fred, i do not take drugs.

I have no clue what you are referring to. (seriously)

Fred
Friday, April 16, 2004

> I have no clue what you are referring to. (seriously)

Sorry, obtuse take off from hopper.

son of parnas
Friday, April 16, 2004

*  Recent Topics

*  Fog Creek Home