技术开发 频道

专访:NetBeans平台发展的未来


【IT168 专稿】

    NetBeans对于国内的任何一个开发者都不会陌生,大家都是从NetBeans的爱恨交加中走过来的,随着Jbuilder的光环渐渐淡去,人们又把目光集中Netbeans身上。随着NetBeans的开源IDE 5.5 beta版的发布,Artima与Netbeans宣传官Tim Boudreau谈论了NetBeans 5.5以及IDE的未来发展方向。在会见内容的结束部分,Boudreau谈论了NetBeans平台,GroupLayout, Matisse GUI构建器,还有NetBeans中除了Java外对其他语言支持。

     Frank sommers是Artima网站的高级编辑,Tim Boudreau是Netbeans的高级宣传官,为了能让国人第一时间了解Netbeans发展的未来,我们IT168网站特翻译此文与Java编程爱好者分享,也希望各位网友能就此采访内容发表自已的见解。下面我们就一同来流览对Netbeans高级宣传官的采访内容。

     Frank Sommers:在2006 JavaOne,你演示了Matisse,NetBeans 5.5图形用户接口编辑器,说Matisse是与以前所有的UI编辑器真正不同的,是什么让Matisse如此独特呢?

    Tim Boudreau: 因为要在多平台上工作,Java UI非常有趣,对于每个平台,都有用户接口设计向导。苹果公司的Mac系统上有,微软的Windows上有,同时还有Java Look And Feel向导。UI标准是很伟大的,它们对于用户使事情看上去很熟悉。同时,每个人对待在一个平台上如何去做是正确的,会有些不同,例如,你应当在离窗体边缘多远放置一个标签。

    我们试图将所有的复杂性提取出来放入一个新的布局管理器中,GroupLayout。GroupLayout正做为一个Java.net的项目而正在开发,它将成为JDK 6中Swing的核心部分。GroupLayout让你指定在一个窗体上的一定的组件彼此之间有一些关系,例如一个位置关系或对齐关系。

    举个例子,考虑将两个组件对齐。一个有文本内容的Jlabel比一个具有文本内容的Jbutton要高一些。如果你希望将它们相邻,就需要公用一个基线,因为已经证明,如果眼睛能沿直线看,人们会读得更快,也容易理解。GroupLayou会很容易做到这点。
对比其它的布局管理器,都需要把这两个组件放入网格中,一个组件占用两个单元,另一个占用一个单元。在其它事情中,GroupLayout处理间隔非常精细,总是考虑执行你的软件的平台。

    Matisse通过与GroupLayout的相互作用而工作,当你设计你的UI时,无论你在什么平台下设计,Matisse都会给出你它建议的位置作为指导。当你转移到另一个平台上时,布局管理器将使用此平台下的设计指导,Swing会使用正确的边界与字体。这就在很高的水平上解决了“Java-app-as-alien”的神话说法,使开发在哪里都可以看上去是正确并且变得容易。

    地方化是你在做UI时必须考虑的另一个问题,决定于你编写的是什么种类的软件,地方化对于你来说可能是可有可无的东西,几乎没有没有什么利用价值 。举个例子,假如你去了象印度这样的地方,那里说着所有的语言,那么地方化就显得十分重要了。

    在Windows的世界里,你编辑了一个资源文件,然后用资源编译器编译。Java通过独立主线应用代码的特性资源绑定,实现给了你一个更动态的选项,资源绑定在提供字符串嵌入于UI的应用中同时。会给你更多灵活性,同时也给你布局管理器更多的压力,布局管理器必须处理做适当的处理,例如,对于同样的事情,你可能用德语时会显得特别长,而在用其它语言会显得很短。
    Matisse真正地帮助你实现本地化,因为它使本地化更加透明。当你双击一个组件并写入一些文本,文本被写入到一个属性文件中,正确的代码会通过文件属性的本地化来获取值。另外NetBeans还有一个特征,允许你检查你的源代码,将所有的硬编码字符串转化为本地变量。因为本地化特征已经有些人开始使用NetBeansb。这些工作不仅仅用于Swing应用,而且也适用希望使用资源绑定的任何应用,资源绑定是Java中做本地化的标准方式。
0
相关文章