剖析短迭代
敏捷教练Dave Nicolette提出:我们应该如何设定迭代长度?是要根据发布周期的时间么?使用短迭代又有哪些好处?
作者 Jon Rose译者 张凯峰 发布于 2008年1月19日 下午8时38分
在去年十月份,InfoQ.com发布了一篇名为“JavaFX概览”的文章。Sun Microsystem的Chet Haase 接着又向InfoQ.com分享了一些JavaFX为Java平台带来的其他方面影响的细节。JavaFX脚本是一门基于Java平台的新语言。它提供一些新的能力以及新的语法来使得实现某些功能更加容易,比如构建图形和GUI应用程序。关于OpenJFX项目的当前状态:
很 明显,现在是可以使用Java的Swing和Java 2D库来编写丰富、动态的GUI应用程序,但并不是那么容易做到。JavaFX脚本让这样的应用程序更加容易地实现。对于Java开发者,这意味着让他们 的工作更加简单,仍然可以借助于他们已经具备的Java平台开发的知识和技能。而对于其他那些不使用Java平台的开发者而言,意味着他们现在可以充分利 用平台的丰富特性和强大之处,并且使用一门他们更容易学习和使用的语言。
OpenJFX 是一个站点,在它上面,JavaFX的不同部分正在以开放的形式进行开发。比如说,用于JavaFX脚本的编译器正在OpenJFX站点上进行开发,因此有兴趣试试早期版本的开发者可以获得最新的拷贝,甚至能为开发小组提出自己的建议和反馈。Haase这样描述JavaFX的组件模型:
OpenJFX上还寄宿或关联着其他一些正在进行或即将成立的项目。比如Scene Graph项目 ,一个使能JavaFX脚本的图形、GUI和动画功能的运行时库。
最后,OpenJFX也是项目当前文档的来源;指南、参考资料和一些指向blog及其他资源的链接都可以在OpenJFX站点上找到。
我把JavaFX脚本组件模型看作是Swing++--,如果这条语句能编译通过的话:)。也就是说,JavaFX脚本的许多组件,比如button,直接依赖底层的Swing平台的功能。因此,JavaFX脚本的button其实就是个Swing的JButton。
但有一些不同之处非常重要。比如:
- 如果没有必要传播某个Swing组件中恰巧是public的方法和域时,这个对象的JavaFX版本就可以选择不再拥有那些域,从而更易于理解和编程。
- JavaFX脚本组件层功能建立于底层的组件之上,从而能够为FX运行时提供可以利用的底层组件的功能。比如,JavaFX脚本语言的 一个新的很酷的功能就是能够触发任意对象的域值的变化。这就确保像button这样任意底层组件的FX包装类都能把变化正确地传播到JavaFX脚本层。
- JavaFX脚本也提供了一些Swing中并不包含的组件和其他GUI对象。比如,当前的JavaFX脚本版本提供了VBox和HBox容器对象,用以在它们的子对象上施以简单的垂直(VBox)或水平(HBox)布局约束。
我无法解决关于JSF的问题(就我个人而言不是很了解JSF),但JavaFX会很乐意能够利用Java平台组件模型的强大力 量。Swing的优势之一是它丰富的GUI组件,以及添加自定义组件的灵活性。既然JavaFX脚本层是在Swing之上,这项优势自然就被继承了下来。Haase谈到部署JavaFX应用程序:
JavaFX脚本应用程序使用和Java应用程序相同的部署方式:作为独立运行的应用程序,或者运行在浏览器中的applet,或者是Java Web Start应用程序(这样可以通过网络来部署,但本质上是在一个安全的沙箱环境中独立运行在桌面上)。
我们已经拥有一个Java的浏览器插件,也就是我们所说的“Java插件”。JavaFX脚本应用程序可以像Java程序那样使 用这个插件。但是,我们现在正在通过一些非常重要的方式来修改对这个插件的支持,尤其在向着支持更多面向消费者的JavaFX应用程序的方向去努力。比 如,对于Java和JavaFX应用程序的启动时间方面的改善,将会使启动时间比现在有显著的提高。而且,我们也正在重写插件代码,以使其更加健壮和灵 活。这两个改进会出现在“Java SE 6,Update 10”的发布版中,你可以在下面这个站点获得早期的版本:https://jdk6.dev.java.net/6uNea.html
我觉得我现在宁愿不要直接对它们作出比较,因为我们现在还处于JavaFX的开发中期,所以任何相对于已经发布的产品的比较都是不成熟的。我能说的是JavaFX在RIA领域真正的优势之一在于它的强大功能和它所基于的底层Java平台的高成熟度。在最后:
我们对来自于社区的帮助很感兴趣。欢迎登录OpenJFX站点,获取最新的版本,体验它的功能,编写一些JavaFX脚本应用程序,并把反馈发送给我们!
本文主要讲述了如何用JBoss Portlet Container 和JBoss Portlet Bridge创建新项目,怎样配置一个JSF应用去使用JBoss Portlet Bridge,以及JBoss Portlet Bridge所具备的功能。
在这篇文章里,Bryon Jacob和Chris Berry将和我们继续探讨AtomServer,它是基于Apache Abdera的完整Atom存储实现。作者还创建了几个Atompub规范扩展,其中包括自动标记、批处理和Feeds聚合。
InfoQ中文站的电子杂志《架构师》试刊第二期出版了!相比于上期,我们在内容的选择安排和版式上都根据读者的意见重新做了修正。“细节决定成败”,我们希望基于InfoQ中文站的专业内容,《架构师》能逐渐成为大家喜欢的电子刊物!
在本文中,Steven Haines探讨了Web应用性能调优问题。该领域过去更像是一门艺术而不是一门科学。他提出了一种称为基于等待调优的方法,使整个调优过程更加可度量,也因此更具科学性。
通常来说,改变技术路线时最艰难的部分是辨别语言语法之间的不同。这篇文章就为Java开发者提供了一份如何转向Flex基础语言ActionScript的指南。
本视频主要以财帮子为例,介绍了如何创建一个PV为百万级的Rails应用。其中包括:Rails应用的服务器架构、Rails Cache的优化、负载均衡的处理、Web服务器的调试、分布式解决方案、Open API的设计等等。
InfoQ首席架构师Alexandru Popescu在采访中谈论了InfoQ架构、Webwork与DWR、Hibernate与JCR、Hibernate可扩展性、最新的InfoQ视频流系统和InfoQ的未来规划。
没有回复
回复