background image

程序员必备 Java API 和类搜索辅助工具发布

根据国外媒体报道,卡耐基梅隆大学计算机系的研究人员日前开发了两款工具用于

帮助程序员从成千上万的 Java API 中选择合适的 API。

  这两款工具的名字分别是 Jadeite 和 Apatite。它们利用了以人为中心的设计技术,

从而大大缩短了搜寻合适的类与 API 的时间。为一个程序选择合适的 API 并不那么直观,
人机交互学教授 Brad A. Myers 说道。目前 Javadoc 库中有 35000 个方法包含在 4100 个类中,
而且这些数字还在不断扩大,因为每发布新版本的 Java,就会有一批新的 API 被添加进
去。就连最好的开发人员也无法完全熟悉这些 API。

  这是所有程序员所面临的基本问题,不管他们是菜鸟还是专家,Myers 说道,

虽然可以让 API 设计的更加简单易用,但现有的 Java 编程中所用到的大量重要的 API 使
用起来仍然很困难。Jadeite 和 Apatite 可以帮助程序员们从现有的 API 中选择自己所需要
的。

  Jadeite(http://www.cs.cmu.edu/~jadeite)是 Java Documentation with Extra Information 

Tacked-on for Emphasis 的缩写。它可以根据 Google 搜索提供的 API 使用频度来通过不同的
字体大小来显示 API 的名称。比如频繁使用的 PrintWriter 就会用大号字母来显示,而不经
常使用的 PrintEvent 则用小号字来显示。

  Jadeite 还使用了众包(Crowd-sourcing)技术来解决有的 API 并不是顾名思义的包

含程序员所希望使用的方法的问题。例如 Message 和 MimeMessage 类并不包含发送 email
的方法。因此 Jadeite 可以让不同的用户为需要使用的类和方法添加一个叫做 placeholder 的
东西,用户可以编辑 placeholder 从而来给程序员提供指导。在 placeholder 中可以告诉程序
员他们所需要的方法的确切位置。

  另外,有的对象的创建对于程序员来说并不是特别熟悉,比如 SSL sockets。在这

种情况下,Jadeite 包含了程序员创建这些对象的最常用代码,用户可以从这些代码范例
中得到启发。

  通过对用户试用的研究显示使用 Jadeite 可以比使用标准的 Javadoc 提高三倍的效

率。

  Apatite(http://www.cs.cmu.edu/~apatite)是 Associative Perusal of APIs That Identifies 

Targets Easily 的缩写,其实现方法与 Jadeite 不同,它可以让程序员浏览 API 之间的关系,
可以查看不同的包、类和方法之间的彼此联系。

  Jadeite 和 Apatite 目前均处于实验研究阶段,但已经可以让公众使用。将这两个工