【IT168 分析评论】Kirill Grouchnikov 说道:核心Swing开发已经停止,Swing仅仅作为Sun UI技术的遗产保留,最标志性的事件是上周Sun停止投资SwingX。
SwingLabs作为JDNC旗下分支于2004年在JavaOne大会上发布,SwingLabs被广泛认为是培育现代UI技术的实验室:开发新的组件,markup标记语言,捆绑技术等,这些新技术最后将会作为JDK的一部分。SwingLabs获得了Swing社区重大的关注,吸引了很多Sun外部的开发者为之贡献代码,讨论不同的实现方式,提供现代,丰富,更容易定制的组件。这些讨论的顶点也许发生在2006年关于画笔painters的讨论中。社区成员IMHO相信SwingX已经被Sun官方承认为作为进入核心Swing的通路和试验田,可以点击这里查看当年关于painter的热烈讨论。
我认为,转折点发生在2007年,Sun单方面决定从SwingX中移除整个painter层,这实际上去除了几乎所有外部贡献的代码,后来一些Sun内部的开发者也从这个项目退出。关于这一点Amy做了评价:SwingLabs 不会被关闭,SwingX不会去任何地方--这是一个伟大的扩展库,社区驱动开发,开发他们需要的功能,我认为这种模式不会结束。
直到这时,社区仍然相信在开发方向上有一定发言权。这以后不久,Sun就宣布决定新的方向:JavaFX。
我不知道JavaFX未来会如何,但是Sun对JavaFX下了很大的赌注,所有我知道的就是JavaFX让所有核心Swing开发都停止了。过去的18格月中,我们看到重要框架规格(JSR 295和JSR 296)修改了方向或者冻结。所有在Java 6 update 10中客户端Java2D界面改进,AWT和Swing修改完全由JavaFx的需求驱动。
Richard说出了自己的看法:Swing是JDK的一部分。它不会在短时间内马上消失。在很多优秀的大型企业级应用中Swing是最好的跨平台工具,我们将继续JDK支持和提供bug修复。
这是再清楚不过了,目前Swing核心工作只有两个方面:支持和bug修复。你也许认为这种情况在JavaFX 1.0发布以后就会改变,但是目前看来无法如此乐观。
JavaFX需要覆盖很多方面来与Adobe和微软竞争,它甚至在移动和作为优异环境方面拥有更大的野心。Swing是JDK向后兼容的牺牲品,Sun不能对Swing API做根本性修改,只能打补丁,而JavaFX作为一种新的语言,Sun可以毫无顾忌的在里面添加新的特性。 Richard说道:毫无疑问,JavaFX有很多工作要做,会发生更多的变化。
我认为,Sun把主要精力放在JavaFX上,Swing已经成为牺牲品。
是的,多少年以来,新的技术出现,旧的技术淘汰,迫使开发者转换方向,也许没人会介意,但是如果你使用Swing很多年,你会介意吗?