编程辅助工具 PARSEWeb 初识

程序员们通常会重用现有的框架或库,以减少软件开发的工作量。在重用现有的框架或者库的时候,一个常见的问题是:程序员知道他们需要什么类型的对象,却不知道如何得到具有具体方法序列的对象。为了帮助程序员解决这一问题,北卡罗来纳州立大学的 Suresh Thummalapenta 和 Tao Xie 开发了一种方法,这种方法将“源对象类型-目标对象类型”形式的查询作为输入,并且提示相关方法调用序列,作为一种解决方案,能够产生从查询中给出的源对象对应的目标对象。该方法通过代码搜索引擎(CSE)进行交互,以收集相关代码样本,并通过采集样品进行静态分析,以提取所需的序列。由于代码样本通过代码搜索引擎按需收集,这种方法不局限于查询任意特定集合的框架和库。而作者已经通过一个名为 PARSEWeb 的工具实现了该方法。 作者声称该工具可以通过挖掘互联网上已有的开源代码库,告诉程序员如何写出某一段代码序列。如果该工具被证明是有效的,无疑可以为程序员减轻负担,从而大大提高软件开发效率。又由于开源代码库中的代码段通常是已经被证明有效的且结构合理的,所以如果这一工具是有效的,它对软件质量的保证也具有相当大的意义。 从目前的情况来看,…