开发工具的改进和不足
对于这个预览版,工具依然是JavaFX优缺点并存的一部分。具有JavaFX插件支持的NetBeans 6.1,再加上Java 6 Update 10,Sun为开发者提供了非常有竞争力的富客户端应用开发和部署平台。
NetBeans插件具有一个漂亮的即时预览功能,任何代码改变都可以让applet重新编译和重新显示。这个功能虽然看起来不错,但是我认为大多数开发者在新鲜感过去后会关掉这功能。
JavaFX预览版中在工具方面存在的不足是,在明年春天以前还没有图形编辑器供开发者可用,这很可能成为开发者在Flex和JavaFX之间做出选择的决定性因素。
除了NetBeans可视化开发工具外,Sun公司表示它正在与第三方紧密合作,以提供一个快速应用开发(RAD)工具,显然我们还能具有一个Eclipse插件,至于具体的发布时间我还没有从Sun哪儿得到答案。对于未来要增加的功能遮遮掩掩,这显然不是赢得开发者之心的好办法。
相形见绌的demo
在预览版中新增的还包括一个天气应用的示例:很高兴JavaFX终于开始关注这部分内容。但是不幸的是这个示例有些让人失望,只是一些数字与几个云形动画的拼凑而成,如果你让这个程序运行几分钟以后,你会发现它还会变得像蜗牛一样慢。而且“今天/明天”天气的切换操作也有点问题。
图1、JavaFX示例
网上看到的其它演示也同样不能令人眼前一亮。javafx.com网站本身的设计就比较差劲,显然这个网站并未遵循可用性原则而设计。在找它的演示页面的时候我就废了半天劲,最后找到了这个右边灰色背景灰色文本的链接。
费劲力气找到这个链接后,展现在你眼前的不过是两个最不起眼的演示程序。第一个范例就是简单的让一些方框实现旋转,这种东西Flash很多年前就可以做了。第二个demo是股票价格程序,看上去有些意思,但是经过使用你会发现它只是一些静态的图和令人讨厌的白色背景的组合,在使用之前我曾经期望里面的表格可以进行分类,或者表格的列可以实现拖拽,但是这些都没有,仅仅是一个简单的表。
你把它与Adobe的Flex 3 的Dashboard相比一下的话,你会迅速发现Sun的处境真的非常危险。
Flex在与浏览器的集成方面也已经领先一步。人们对早期的Java applet的主要批评之一是它们不能与所在的页面非常好的融合。一个改变了视觉风格(字体、线条粗细、颜色等)的Web设计器可以对样式表进行修改,但是applet依然看上去和以前一样,依然要求重新编程、重新编译和重新部署。
很明显的答案是为Swing增加对外部样式的支持,这是Flex所采取的方式。由此带来的结果是非常显著的,这会把应用程序外观控制权交到Web开发者的手中。
我曾经问过Sun负责JavaFX的高级产品经理Jacob Lehrbaum,将来是否会在JavaFX中增加对样式表(stylesheet)的支持。尽管他看上去真的希望给我一个肯定的答案,但是至今为止未能实现。在这一点上与Sun在JavaFX上所做的工作很相似:看上去潜力很大,但却总是只许下一些美好的承诺,而不去在现在来兑现。