5

给定一个大型 API(特别是 Java 或 J2EE 标准库),是否有工具或搜索引擎或其他资源可以告诉我人们通常最常使用哪些方法、类甚至包?我正在注释(见下文)API,并希望将注意力集中在热门领域。我唯一能想到的就是使用具有不同方法名称的谷歌代码,但这当然很乏味。

一些背景(如果有人感兴趣的话):作为我博士研究的一部分,我开发了一个工具,允许用户在方法文档(他们自己的或现有的 API)中突出显示重要的“指令”,然后将这些注释推送给用户以增加他们意识到这一点的机会。我们的实验室研究表明这是有潜力的,但为了让人们在现场使用它,我必须提供带注释的 API 的“语料库”,并且我正在尝试优先考虑要注释的库。

4

5 回答 5

3

我不知道这样的统计数据是否可行,但我认为一个非常安全的选择是从基础知识和一些著名的第三方库开始。例如:

至于第三方

于 2008-10-25T16:16:59.107 回答
1

这个“简单”的 bash 脚本将计算您当前项目代码库中最常用的类。

寻找 。-名称“*.java”| xargs 猫 | grep "^import java" | 排序 | 唯一的-c | 排序-nr | 头 -100
于 2008-10-25T17:11:41.633 回答
0

似乎可以自动化一个过程,其中 J2SE 或 J2EE 包列表可以提交到 Koders.com、Google Code 或其他开源代码搜索存储库,计算每个包的结果并排序最流行的。

请注意,这不会为您提供绝对完整的结果,因为 java.lang(或任何其他隐式导入的包/类)不会出现在该搜索中。

尽管我可能弄错了,但我认为不存在此类信息的现有工具或发布者。

另一种可能性是选择一些“代表性”项目,下载它们并使用依赖分析工具,如JDepend,生成依赖报告并处理它们以获得一组正在使用的包/类。

于 2008-10-25T19:55:35.047 回答
0

我想,您想根据使用频率对它们进行排名。我建议你下载一些开源的java项目,运行一个静态分析工具。然后在同一个集合上运行内存分析器,最后推断这些统计信息

于 2008-10-25T20:49:16.637 回答
0

您可以为此使用 MethodRank 指标,以检测一些开源项目中最常用的方法和类。

您可以获取JavaDepend的试用版,分析一些流行的 java 开源项目,并执行一些 CQL 请求(如 SQL),以获取这些项目中所有最常用的方法、类、字段。

PS:试用版满足你的需求,没有时间限制。

于 2011-11-15T21:50:31.450 回答