I am about to start a new job, developing and maintaining Java GUI
apps. The company currently has two applications in SWT, and one with
Swing. They want to pick one GUI toolkit and stick with it.
I have quite a bit of experience with Swing, and I am familiar with its
pros and cons. I know a lot less about SWT, but I like what I have
read about it.
My new boss is asking for a recommendation on picking Swing vs. SWT.
The advantages of the former are:
- The other GUI developer and I already know it
- The boss has found it easier to hire developers with Swing experience
The advantages of the latter are:
- One app to convert rather than two
- Somewhat better perceived performance
I probably am firing the opening shot in a religious war, but I am
asking for the group's opinions on which toolkit I should recommend for
the long haul.
Thanks in advance.

Signature
Jim McMaster
mailto:jim.mcmaster@comcast.net
David Van de Voorde - 12 Jan 2005 16:39 GMT
I'm asking myself the same question. Wrox has published a book on using
SWT/JFace for developing GUIs. The introductory chapter is freely available
on:
http://www.wrox.com/WileyCDA/WroxTitle/productCd-0470094591.html
Therein is said:
* SWT is more performant as it is only a tiny wrapper around native
components; only if components are not available, it emulates them. Swing on
the other hand emulates all components making it slower + not providing the
same L&F as native applications do.
* SWT is easier to learn + allows for both traditional development as the
MVC approach.
* SWT allows to integrate with the native UI and allow for e.g. drag'n'drop
or integration of e.g. ActiveX components.
* If you are not satisfied with any aspect of SWT/JFace, you can simply
modify the source code provided with it.
* Disposing could be at first seen as a con for SWT, but in reality it is
rather easy as parent objects recursively dispose of their children, and the
pro is that it adds to the responsiveness of the system.
I myself am thinking: if Swing would have been at least 'good enough', there
would have never been any initiative (at least not that big) to provide an
alternative to Swing, right ?
I once switched (probably 5 years ago) from AWT to Swing on my 120 MHz
computer. Where AWT would still do the job, Swing just blocked 1 sec for
each action on the GUI !
However, I'm wondering what other people (perhaps with hands-on experience)
have to say about this ...
Hoping for your input,
David.
> I am about to start a new job, developing and maintaining Java GUI
> apps. The company currently has two applications in SWT, and one with
[quoted text clipped - 20 lines]
>
> Thanks in advance.