是否有一些最常用的JavaAPI函数的统计数据?

是否有一些最常用的JavaAPI函数的统计数据?,api,java,Api,Java,给定一个大型API(特别是Java或J2EE标准库),是否有工具、搜索引擎或其他资源可以告诉我人们通常使用最多的方法、类甚至包? 我正在注释(见下文)API,并希望将注意力集中在流行领域。 我能想到的唯一一件事就是用不同的方法名使用google代码,但这当然很乏味 一些背景(如果有人感兴趣的话):作为我博士研究的一部分,我开发了一种新的方法,允许用户在方法文档(他们自己的或现有的API)中突出重要的“指令”,然后将这些注释推给用户,以增加他们意识到它的机会。我们的实验室研究表明,这是有潜力的,但

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


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

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

  • (及)
至于第三方

  • (Servlet容器,但通常嵌入)
此“简单”bash脚本将统计当前项目代码库中使用最多的类

find . -name "*.java" | xargs cat | grep "^import java" | sort | uniq -c | sort -nr | head -100 找到-名称“*.java”| xargs cat | grep“^import java”| sort | uniq-c | sort-nr | head-100
似乎可以自动化一个流程,其中J2SE或J2EE包的列表可以提交到Koders.com、Google Code或另一个开源代码搜索库,计算每个包的结果,并对最流行的代码进行排序

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

我不认为有一个现有的工具或出版商的信息,虽然我可能是错的


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

我猜,您希望根据使用频率对它们进行排序。我建议您下载一些开源java项目,运行静态分析工具。然后在同一组上运行内存分析器,最后推断这些统计数据,您可以使用MethodRank度量来检测一些开源项目中使用最多的方法和类

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


PS:试用版足以满足您的需要,没有时间限制。

这是一个很好的起点。我会将JDBC添加到列表中。是的。不过,没有多少人直接使用网络API。Swing可能是使用最少的。Properties是我在资源包中看到的另一个非常常见的API。我几乎相信有些字符串函数不仅仅出现在集合中。@Axeman:我肯定你是对的,但是字符串在核心java.lang包中。很明显,它忽略了java.lang包。它没有考虑使用频率。很好的尝试(没有双关语)