The speed of SWT
Some strange contradiction happened this week. Joshua Marinacci is asking in his blog why people aren’t shipping Swing applications. His post has generated a lot of reactions, and many people are saying that Swing isn’t fast enough, and that’s why they prefer SWT. Infoworld published an article comparing the four major Java IDE’s: Four Java IDEs duke it out. The article compares Borland JBuilder, IBM Rational Software Architect, Oracle JDeveloper, and Sun Java Studio Enterprise 7. IBM Rational Software Architect is based on Eclipse, so it uses SWT. According to the article the IBM IDE is the slowest of the four, and Oracle Jdeveloper is the fastest. Oracle’s JDeveloper is based on Swing. So it seems like using SWT for performance isn’t really that important, performance probably has to do with a lot of other issues as well.
April 4th, 2005 at 5:25 pm
I run both “IBM Rational Software Architect is based on Eclipse” (RAD) and Eclipse.
RAD is much much slower than Eclipse. The day after I installed RAD I upgraded my computer to 2GB ram….
April 4th, 2005 at 8:37 pm
+1 to that. IBM tools are notoriously slow. Compare WSAD 5 to Eclipse 2.x and you’ll see what I mean. Same eclipse engine… much slower to use in the IBM shrinkwrap.
On the speed story, I ported a small crypto app from Swing to SWT and it started in less than half the time (on JDK 1.4, mind. 1.5 is definitely improved here).
April 5th, 2005 at 6:41 am
The fact that Infoworld likes the speed of the other IDE’s, complex tools written using Swing, indicates that it is possible to build good performing applications using Swing. So keeping in mind that Swing is the standard, is see no reason to go to SWT.
April 9th, 2005 at 5:17 pm
I wish people would stop blaming the toolkit. JDeveloper isn’t fast because of Swing. IBM crappy Architect isn’t slow because of SWT.
April 12th, 2005 at 2:34 am
I agree pappaj
October 28th, 2005 at 1:52 am
1) Disable trace out put, you will see significant change speed
2) Disable virus scanner
3) Disable validatations
December 19th, 2005 at 7:30 am
I agree with pappaj. GUI in essence is I/O. This I/O does not have to be as fast as disk or memory. After all, its input driver and output consumer is human being, which apprently cannot respond as fast as disk and printer. So to speek, usability of GUI should be much emphasized compared to the speed and performance of GUI. Programmers should paying more attention to improving software architecture and usability. Jdeveloper outperforms WSAD not because it uses swing, but because of other aspects. But it also certifies GUI toolkit is not the key.
Frankly speaking, Swing should be slower and less responsive than SWT especially on Windows. Of course SWT does not win on all OS platform. On some OS, Swing wins or they are 50 to 50. Swing does outperform in other aspects, such as better framework, better platform compatibility, easier to develop customized components, more mature etc.
May 23rd, 2006 at 9:14 pm
IBM RSA is slow indeed but the reason is not related to Swing or SWT. RSA comes as an all-in-one IDE provides lots of features. It’s based on eclipse framework so that this means every feature is implemented as an plug-in. and that leads to the result, rsa is the slowest IDE of four, for sure.
May 24th, 2006 at 6:53 am
JDeveloper isn’t much different, it’s also an all-in-one IDE with a lot of features provided through plugins. And still it is pretty fast, so RSA should be too.