Thursday, April 28, 2005

SWT Happens

Mr. Ed at Hacknot has been working with Swing for the last seven years and with SWT exclusively for the last four months. After dealing with SWT bugs and missing features he's got a rant about why he doesn't like SWT. It's a decent rant, not the typical "XYZ sucks because it's not exactly like this other technology that I already know". There are a few rebuttals in the comments to the article including this one. Some of them miss the point a bit. Mr. Ed is talking specifically about SWT and JFace, not about Eclipse as a whole.

My experience with SWT has been limited to working in the context of Eclipse plugins. In this limited sense, SWT works fine for our purposes. My experience with Swing was nearly five years ago on a stand-alone application. It was pretty miserable. Lots of performance issues and display bugs on Windows. When we moved the application to Linux we ran into a litany of additional bugs and misfeatures. More recently then I've used several IDEs and applications (such as Alice) built with Swing and the performance is fine.

Eclipse 3.0 can support plugins written in Swing (with some caveats). That doesn't solve the problem of SWT vs. Swing but if you're moving existing Java code to an Eclipse plugin it does mean that you might be able to avoid rewriting it to use SWT.