技术开发 频道

Eclipse 3.2 Java开发新特征全面体验


【IT168 技术新闻】 
    运行

  在一些IDE中,你一般要设置一个工程为"主工程",并且使用一个全局的Run命令来运行这个程序。相比之下,Eclipse却不是以这种方式工作。在Eclipse中,你拥有一串启动配置,它们包含有关于运行、调试或测试代码的所有的详细资料,例如命令行参数、类路径、JRE版本,等等。在Eclipse 3.2中,通过使用过滤和执行环境,管理启动配置更为容易。

  过滤让你根据你感兴趣的内容进一步裁减配置列表。执行环境让你使用一种通用命名,例如"J2SE-1.4",来描述一个Java运行时刻的能力。Eclipse能够选择满足或超出你指定要求环境的JRE版本。

  你是否曾发现自己在开发期间不断地运行多个测试集?在3.2版本下,你可以在同一时刻运行多个测试集,并且你可以"回溯"和查看以前运行的历史。Eclipse 3.2还支持最新版本的JUnit(4.0版本)。

  团队开发

  你是否曾发现自己盯着一行代码发愣:谁加入的这些代码?为什么?Eclipse 3.2能显示基于颜色的注解以便确定在当前文件中各部分内容的作者-这是通过读取CVS历史(见图3)实现的。把鼠标停在一个更改块上将显示开发者的姓名、相应的日期和注释信息。它还会高亮在文件的其它部分中作过相同修动的代码。

  图3.CVS Quick Diff注解显示基于颜色的注解(在当前文件中各个部分的作者),在某一部分上停留鼠标将显示该修改版本的细节。

  我确信你也有这种体会:你调用其他人编写的代码,并且一切都能顺利工作,直到它们以一种新的版本出现。然后,你开始遇到一些过时的"警告",更有甚者,出现一些编译错误,直到你修改你的程序来适应其改变。好了,现在的Eclipse 3.2引入了一种非常酷的特征,称为"重构脚本",极大地简化了这一过程。

  当然,重构简单地意味着改变源码而不改变其行为。例如,也许存在拼错的字段,或者一个方法需要一个新的参数。Eclipse一直为自动化类似的修改提供良好的支持。而且,现在它还为消费者也提供了帮助。

  你实现的每个重构操作都记入历史。Eclipse 3.2让你把这一历史写入到一个脚本文件中,以后再使用之。你可以把这些脚本保存到CVS中或把它包括到一个JAR文件中,这样以来该JAR的用户就能够在他们得到一个新版本时"恢复"同样的改变。这与应用补丁是不同的。补丁只能针对导致它们的具体的源文件操作,而重构脚本却能够针对任意的使用重构API的源码文件操作。

  维护一种不断增长的API是一项相当困难的工作,现在Eclipse使得这一工作容易多了。当你重命名一个方法时,Eclipse 3.2能够保持旧的方法不动,把它标记为"过时的",然后对之进行重定向以便调用一个新方法,并制作一个重构脚本以自动地转换所有调用者-当它们导入你的新的JAR文件时。

  代码清洁器

  一直以来,Eclipse具有一种相当强的代码格式化功能以帮助整个团队的代码格式化标准。在版本3.2中提供了一个新的"Clean Up"向导(见图4)进一步加强了这一功能。下面列出这个向导的一些选择实现功能:

  · 删除不用的导入功能。
  · 删除不用的private方法和构建函数。
  · 添加缺乏的@Override和@Deprecated注解。
  · 添加缺乏的$NON-NLS$标签,或删除不必要的那些标签。
  · 把所有循环转换成增强式的for循环。
  · 把控制语句体转换成块。
  · 删除不必要的强制转换。
  · 把串行序列版本ID添加到Serializable和Externalizable类。
  "Clean Up"向导能够在一个Java文件、一个包甚至整个工程上运行。

  图4."Clean Up"向导让你在整个工程范围内应用一致的标准。

  结论

  如今,比较于任何其它语言和平台来说,有相当范围的工具可以供Java程序员选择利用。我也搞不清楚这其中的原因-也许这是用户的巨大能量和积极性所致,或者是缺乏单个主流供应商的结果。无论什么原因,Eclipse都能够与许多选择对象-包括NetBeans,IDEA,JDeveloper和JBuilder-进行媲美。随着3.2版本的发行,Eclipse对Java IDE的许多方面都是一次大的跃进,这将会使所有的Java程序员受益,不管你最终选择哪一种工具。






0
相关文章