接近十年前,当Java仍是一个新生的可移植的软件平台,翻筋斗Duke小应用程序还是时尚的前沿,新成立的Swing小组成员,参加了由Sun JavaSoft总裁Alan Baratz召开的一个拥挤的JavaOne会议。他告诉参加会议的人,我们小组在未来仅三个月内将推出一套新的图形用户界面工具。尽管我们开发这套我们称作“轻量级”的工具已经有段时间了,他还是不厌其烦地提醒我们这个新项目的最终期限。如果不是因为空间足够大,我们恐怕都要从椅子上摔倒。

三个月后一个相当局限的"0.1"Swing发布了。Java开发者不仅仅接受了这个早期版本,而且实际上开始使用它开发应用程序甚至产品,这在九十年代中期,足以证明了Java带来的一波波开发热情。不幸的是,1995年Java发布时最早开发者热情颠峰随着时间逐渐消退。到1998年岁末时,当我们把 Swing作为Java 2的一部分发布了1.0时,Swing小组已经被现实深深陷住了,性能、本地化外观一致性问题以及许多错误几乎把整个项目拖垮了。

引人注目的是Swing小组和更高层的桌面客户端软件部仍然坚持住了。Java客户端软件系列的实现被大规模的剖析和调协,到下一版Java发布时,性能已经相当可观。在随后的几个版本中,性能已经完全不是一个问题。本地外观一致性以及稳定性也不再困扰了,在JDK5和随后的6、7等版本中,渲染本地组件的任务将委托给本地GUI工具,因此Swing将和本地组件完全一模一样,不论是在Linux上还是在Macintosh上,甚至包含Windows Vista。

新软件的风格其半衰期一般大概18个月,之后关于它的书籍就逐渐被扔到垃圾桶,关于它的讨论也逐渐消逝,开发者开始转移到下一件大事情上。Swing却没有经历这种命运,随着这几年的稳定和改进,它吸引了一群忠诚并不断扩大的开发者,他们开发了成千上万的Swing应用程序,分发到数以亿记的用户。正如权威调查机构Evan's Data公司报道的那样“Java Swing with 47% use, has surpassed WinForms as the dominant GUI development toolkit.”,这(接近)10年来Swing是相当不错的。