加入收藏 | 设为首页 | 会员中心 | 我要投稿 厦门网 (https://www.xiamenwang.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 教程 > 正文

GitHub上100个最受欢迎的Java基础类库

发布时间:2017-06-20 04:06:18 所属栏目:教程 来源:廖煜嵘编译
导读:作为一名成天与既成熟且不绝成长的Java说话打交道的开拓者,面临的逆境之一就是在我们编写代码的时辰,是行使一些大家评论的人们新技能呢,照旧僵持行使一些虽旧但成熟的类库?

        【 技能】作为一名成天与既成熟且不绝成长的Java说话打交道的开拓者,面临的逆境之一就是在我们编写代码的时辰,是行使一些大家评论的人们新技能呢,照旧僵持行使一些虽旧但成熟的类库?

  因为Java应用中大部门是贸易用途,因此有的时辰很难等闲将现实已行使的有哪些框架疏散出来统计。在一个开源Java框架的成长进程中,社区用户和孝顺者是该框架可否一连乐成和成长的要害身分。

  我们选取了今朝措施员们在行使的,天下上最大的Java项目代码库GitHub去行使基于数据的要领去举办研究。在我们之前的文章中,我们研究了GitHub中最多人行使的100个Javascript、Ruby和Java项目。在本文中,将重点说明Java项目中其顶用到了哪些受接待的类库。

100个最受接待的Java类库

  研究要领

  在本文中,我们回收如下的要领去举办研究:挑选了10000个深受社区接待的开源项目,它们在社区中有相对重要的职位。我们选用了GitHub中大大都项目中行使的pom.xml去举办分类研究,将其顶用到的类库举办分组,其功效异常故意见意义。

  观测功效

  下图表现的是观测功效图中,Java开源项目顶用得最多的类库的部门截图,完备的观测功效请参考:

  https://docs.google.com/spreadsheet/ccc?key=0Alceaf46X4GPdHhKV0FFSnVpTlA2SkpiaVU0M3BDYXc&usp=sharing#gid=0

  日记方面的类库:行使最多的类库是slf4j,有3068个项目行使它。看上去GitHub上的Java开拓者都接管了将详细的日记体系和应用解耦的要领,由于sl4j着实上并没限定开拓者在详细应用中行使什么日记引擎,提供了同一的记录日记的接口,只要凭证其提供的要领记录即可,最终日记的名目、记录级别、输出方法等通过详细日记体系的设置来实现,因此可以在应用中机动切换日记体系。虽然,个中详细的日记体系中行使的最多的依然是log4j――有891个项目行使它。居亚军的是Apache的Commons-logging,有334个项目行使,数目连log4j的一半也不到,第三位的是sl4j自带的最简质朴现类库,有174个项目行使。

  Spring:尽量Spring也许一向被人以为是更成熟而不是时髦的框架,但依然在前100位中占有了近15席(都是Spring相干的类库)。Spring是复杂的框架,探讨它个中有哪些类库是用得最多的是很风趣的工作。除了Spring的焦点类库外,Spring-test是行使得最多的(有376个项目行使)。之后是强盛的Spring-MVC框架有277个项目行使,接下来的是Spring的SpringORM相干成果的类库,有218个项目行使。

  TDD相干有:3068个项目行使JUnit。这表白测试驱动开拓的方法已经占有Java项目标半壁山河。看上去假如是Java措施员,则在开拓措施的时辰单位测试是必不行少的了。要值得留意的是,在测试框架中,并不是只有JUnit称霸,其它一个不错的测试框架TestNG,有331个项目在行使。

  Mockito:Mockito是一个很风行的mock测试框架,得到的413个项目标青睐。EasyMock紧随厥后,有231个项目在行使。

100个最受接待的Java类库

  Google Guava器材类库:今朝,越来越多的开拓者喜好行使Google Guava类库,个中有4.8%的项目在行使。

  Apache Commons器材类库:接下来我们寄望到Apache旗下的开源器材类库Apache Common,它也是在Java说话中行使异常普及的器材类库。Commons-io和Commons-langz占有了前10位,别离有519个和504的项目在行使它们,异常风行。

  在Apache的Commons器材类库系列中,个中有13个在前100位中呈现。Google的Guava类库,也提供相同的成果,获得了483个项目标支持。

  下图为凭证范例去统计的行使最多的Java类库:

  SQL & NoSQL:跟着NoSQL最近这几年成为最火热的话题,则必需考查既行使相关数据库也行使NoSQL的项目数。个中统计数据表白,Mysql有225个项目在行使,Hibernate ORM尽量自己不是数据库,但有181个项目用到Hibernate技能。

  Hadoop:在观测数据中我们发明,个中有168个项目涉及到Hadoop,这比自己在成熟的相关数据库之一Postgre SQL的票数要多(121个项目行使Postgre SQL)。

  ElasticSearch:其它一项大数据技能,在观测样本中发明有110个项目行使,其它很惊奇发此刻Ruby中有1085个项目行使的sqlite数据库,在Java这边却不能进入前100位。

  Android:在GitHub的本次观测中,发明有228个项目通过Maven在行使Android。尽量今朝在GitHub上的移动应用比例不是太多,但可以表现出Java依然是处事端编程说话的老大。

(编辑:厦门网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    热点阅读