Print

Andrew Binstock: The Java GUI Toolkit Flatline



Andrew Binstock
Email
November 15, 2007 —  (Page 1 of 2)
We are seeing the transformation of the client into an incredibly rich personal experience.

AJAX, RIA and other Web 2.0 technologies are driving new paradigms in the browser, while Windows Presentation Foundation (WPF) is similarly improving desktop GUI experiences on Wintel systems. One technology that has not participated in this revolution is Java. In fact, it’s hard to recall any major stories regarding Java’s built-in Swing toolkit or IBM’s competing Standard Widget Toolkit (SWT). I find this curious, because we all remember how just a few years ago the rivalry between these two camps was intense. Since then, the smoke has cleared, and we see that the fires of innovation in both camps are on a very low flame.

Swing, as most of you will recall, came out in 1998 with much fanfare as part of the Java 1.2 release. Its claim was remarkable breadth of functionality and a nearly infinite configurability. Any interface need of that period—no matter how complex—could be done in Swing. And because Swing was skinnable, it could be made to approximate the look and feel of Windows, Motif and other interfaces. But Swing had drawbacks: At the time it was slow and its emulation of native widgets and controls was far from faithful. Moreover, Swing was difficult to program.

In response, IBM developed SWT. The defining aspects of SWT were the use of native widgets and simplicity of programming. In exchange, it gave up the full complement of functionality that Swing offered. Because the primary use case for SWT was the Eclipse IDE, the features left behind (such as truly rich text) were not likely to be terribly missed.

When SWT came out, it was indeed faster than Swing, and it used native widgets. Shortly, the JFace library appeared, which expanded SWT’s power by providing higher-level constructs, while still allowing direct access to the lower-level controls.

Since then, though, progress has consisted primarily of refining the underlying technology rather than advancing it, and porting to new platforms. Swing, for example, now runs very fast and has an interface that is faithful to underlying look and feel. If today’s Swing had been available when IBM began getting serious about Eclipse, I doubt SWT would have been funded or needed.




Pages 1 2 


Share this link: http://sdt.bz/31327
 
Most Read Latest News Blog Resources

Add comment


Name*
Email*  
Country     


  • Comment
Loading




close
NEXT ARTICLE
Zeichick’s Take: Java, Java everywhere
The results are in from SD Times' Java & SOA Study, and it shows that out-of-date systems are still being widely used Read More...
 
 
 
 
News on Monday
more>>
SharePoint Tech Report
more>>


   

 
 

Download Current Issue
MAY 2012 PDF ISSUE

Need Back Issues?
DOWNLOAD HERE

Want to subscribe?


 
blogs tab
Why we leave
Ten reasons good workers leave their jobs, plus a few suggestions for retaining them.
05/22/2012 06:14 PM EST

Creation
To write better software, cultivate your ability to be creative.
05/19/2012 07:40 PM EST

Slick...but who needs it?
compilr.com is a well-designed site and the folks behind it seem to have their heart in the right place. But...who needs it?
05/16/2012 12:45 PM EST

How to be a better software developer
Want to be a better developer? You won't get there by mastering an interesting language or learning a new set of APIs.
05/14/2012 12:18 PM EST

Wooing Galatea
Do yourself a favor and check out Galatea 2.2, a wonderful book by novelist Richard Powers.
05/12/2012 07:05 PM EST

The world as story
An artificial-intelligence system at Carnegie Mellon seeks to understand the world by making statements about it.
05/10/2012 06:39 AM EST

 

Events calendar tab
6/3/2012 to 6/7/2012
Orlando
IBM Rational

6/10/2012 to 6/15/2012
Las Vegas
SQE

6/10/2012 to 6/15/2012
Las Vegas
SQE

6/11/2012 to 6/14/2012
Bellevue, Wash.
AMD

6/11/2012 to 6/14/2012
Orlando
Microsoft