APP下载

结合可达性分析的代码片段推荐

2014-06-07于海波

计算机工程 2014年11期
关键词:程序规则环境

贾 翕,于海波,方 璐

(上海交通大学软件学院,上海200240)

结合可达性分析的代码片段推荐

贾 翕,于海波,方 璐

(上海交通大学软件学院,上海200240)

为满足日益复杂的软件需求,开发人员需要通过代码提示工具来辅助完成开发任务,但现有代码提示工具在推荐包含静态方法的代码片段时存在空间爆炸问题。为此,提出一种基于程序环境信息的代码片段推荐方法。结合可达性分析进行推荐能够有效削减静态方法入口点,在避免空间爆炸的同时,还可以准确、有效地描述程序环境信息。基于该方法实现在Eclipse中的代码推荐插件,并对Tomcat源码进行实验验证。实验结果表明,该方法可实现静态方法的代码片段推荐,与Eclipse Code Recommenders插件中的推荐方法相比,能获得更准确的推荐结果。

静态方法;代码片段;语义网规则语言;可达性分析;代码推荐;排序

1 概述

由于软件系统越来越复杂,因此研究者大多采用成熟的框架来进行开发,以此来提高软件开发的效率和质量。目前框架的种类越来越多,而且框架本身也越来越复杂,例如,在.NET Framework 4.0中有近700个命名空间、30 000个类型、280 000个方法,在这种情况下,开发人员想要在短时间内掌握庞大的信息就变得十分具有挑战性。因此,开发环境中集成了很多代码提示工具来帮助开发人员进行开发工作,如参数补全、函数提示等。

目前,代码片段推荐主要采用的方法有基于历史代码的推荐方法和基于程序环境信息的推荐方法。但对于包含静态方法的代码片段,这2种方法均不能给出满意的推荐结果,其原因在于,仅根据程序上下文,无法得知所有可能的静态成员,而即使得知所有的静态成员,由于其数量众多,如果将其全部加至入口点进行搜索,会造成空间爆炸。……

登录APP查看全文

猜你喜欢

程序规则环境
撑竿跳规则的制定
长期锻炼创造体内抑癌环境
一种用于自主学习的虚拟仿真环境
数独的规则和演变
孕期远离容易致畸的环境
试论我国未决羁押程序的立法完善
环境
让规则不规则
“程序猿”的生活什么样
英国与欧盟正式启动“离婚”程序程序