程序员开发实例大全宝库

网站首页 > 编程文章 正文

GitHub上最受欢迎的100个JAVA库,值得学习

zazugpt 2024-08-25 17:33:13 编程文章 19 ℃ 0 评论

TaKiPi网站用数据说话,分析了60678个GitHub上的Library。研究了这些库的导入语句,其中包括Github的前5,216个Java项目使用的11,939个独特的Java库。

前20名Java库

意料外的

Hadoop

Hadoop排在42位,Apache Spark没有在前100名的列表中。Apache Zookeeper到了75位。

Log4j

Log4j的受欢迎程度是Logback的两倍多 - Log4j在16.76%的项目中被使用,超出了Logback的8.45%。

SQL> MongoDB> PostgreSQL

Java SQL连接器在27位,MongoDB在87位,PostgreSQL仅仅在97位。

结论

JUnit是Java Libraries的无可争议的王者 - 64%的Github顶级Java项目导入了JUnit。接下来是Spring前端的spring-test和testng ,这些是我们在前20名列表中看到的前3名Java测试库。

SLF4J是最受欢迎的日志库 - 无论是使用Log4j,Logback还是其他日志记录引擎,拥有超过22%的Github顶级Java项目中1,184个都使用slf4j的日志facade。

前100中的有14个来自Spring框架 - 前100名中最受欢迎的框架(甚至超过前100名中的有12个库入选的apache-commons),以spring-context为最受欢迎的库。

Guava是第4名 ,Google 核心的 Java 常用库,有815个Github顶级Java项目,占15.6%。

apache-commons确实如其名字一下很common。Apache Commons包含了很多开源的工具,用于解决平时编程经常会遇到的问题,减少重复劳动。commos-io排在第5位/0} ,另外还有11来自apache-commons的库排在前100之内。

Mockito是最受欢迎的Java模拟测试框架 - 559个项目在使用(10.72%),表明了其使其重要地位,排名第七。

开发者爱使用joda-time - 这并不奇怪。但是能到18位,也是挺有意思的。这个库提供了一组Java类包用于处理包括ISO8601标准在内的date和time。可以利用它把JDK Date和Calendar类完全替换掉,而且仍然能够提供很好的集成。

更多

#65 - Bukkit - 前100名榜单中唯一的游戏库,Minecraft服务器。

#66 - Jetty

#81 - PowerMock - 它可以用于解决通常被认为是难以甚至不可能测试的测试问题”。

#90 - Google Protobuf - 语言中立的,平台中立的,可扩展的序列化数据的方式。用于通信协议,数据存储等。

#100 - AssertJ - 为Java提供了流式断言。接受来自FEST Assert的迁移。

前100个库按类型分

下面是原始数据

OrgLibraryTypeProjects who use it% of Projects
junitjunitTesting334564.13%
org.slf4jslf4j-apiLogging118422.70%
log4jlog4jLogging87616.79%
com.google.guavaguavaUtilities81515.63%
commons-iocommons-ioUtilities65912.63%
org.slf4jslf4j-log4j12Logging64112.29%
org.mockitomockito-allMocks55910.72%
commons-langcommons-langUtilities4949.47%
javax.servletservlet-apiJava Extension4448.51%
ch.qos.logbacklogback-classicLogging4418.45%
org.springframeworkspring-contextUtilities3887.44%
org.mockitomockito-coreMocks3787.25%
org.apache.httpcomponentshttpclientWeb3606.90%
org.springframeworkspring-testTesting3586.86%
org.apache.commonscommons-lang3Utilities3536.77%
commons-codeccommons-codecUtilities3486.67%
commons-loggingcommons-loggingLogging3476.65%
joda-timejoda-timeUtilities3266.25%
org.testngtestngTesting3246.21%
org.slf4jjcl-over-slf4jLogging3246.21%
org.codehaus.jacksonjackson-mapper-aslParsing3045.83%
org.springframeworkspring-coreUtilities2975.69%
com.google.code.gsongsonParsing2955.66%
com.fasterxml.jackson.corejackson-databindParsing2935.62%
org.springframeworkspring-webmvcWeb2805.37%
com.google.androidandroidAndroid2544.87%
mysqlmysql-connector-javaDB2504.79%
org.springframeworkspring-webWeb2474.74%
commons-collectionscommons-collectionsUtilities2434.66%
org.hamcresthamcrest-allTesting2384.56%
org.springframeworkspring-beansUtilities2204.22%
org.slf4jslf4j-simpleLogging2104.03%
org.springframeworkspring-jdbcDB2023.87%
commons-clicommons-cliParsing1983.80%
org.easymockeasymockMocks1963.76%
com.h2databaseh2DB1963.76%
com.fasterxml.jackson.corejackson-coreParsing1893.62%
org.codehaus.jacksonjackson-core-aslParsing1883.60%
org.springframeworkspring-ormDB1853.55%
javax.servletjavax.servlet-apiJava Extension1813.47%
org.hamcresthamcrest-libraryTesting1803.45%
org.apache.hadoophadoop-coreDB1793.43%
commons-httpclientcommons-httpclientWeb1743.34%
org.springframeworkspring-txDB1713.28%
org.springframeworkspring-aopAOP1713.28%
org.hibernatehibernate-validatorDB1693.24%
org.hibernatehibernate-entitymanagerDB1673.20%
org.elasticsearchelasticsearchDB1673.20%
javax.servletjstlJava Extension1663.18%
org.hibernatehibernate-coreDB1663.18%
org.jsonjsonParsing1623.11%
commons-dbcpcommons-dbcpDB1593.05%
org.hamcresthamcrest-coreTesting1583.03%
org.apache.mavenmaven-plugin-apiBuild1432.74%
com.google.injectguiceUtilities1412.70%
commons-fileuploadcommons-fileuploadWeb1402.68%
com.google.code.findbugsjsr305Testing1342.57%
org.hsqldbhsqldbDB1332.55%
javax.mailmailJava Extension1322.53%
org.springframeworkspring-context-supportUtilities1312.51%
ch.qos.logbacklogback-coreLogging1312.51%
commons-beanutilscommons-beanutilsUtilities1312.51%
org.aspectjaspectjrtAOP1312.51%
com.fasterxml.jackson.corejackson-annotationsParsing1282.45%
org.bukkitbukkitGaming1272.43%
org.eclipse.jettyjetty-serverWeb1242.38%
javax.validationvalidation-apiJava Extension1222.34%
cglibcglib-nodepMocks1202.30%
org.apache.httpcomponentshttpcoreWeb1172.24%
javax.injectjavax.injectJava Extension1162.22%
cglibcglibMocks1142.19%
com.googlecode.json-simplejson-simpleParsing1132.17%
xercesxercesImplParsing1132.17%
org.apache.velocityvelocityWeb1112.13%
org.apache.zookeeperzookeeperWeb1102.11%
javax.servlet.jspjsp-apiJava Extension1082.07%
org.springframework.securityspring-security-configWeb1072.05%
org.aspectjaspectjweaverAOP1062.03%
org.codehaus.groovygroovy-allGroovy1052.01%
org.springframework.securityspring-security-webWeb1031.97%
org.powermockpowermock-module-junit4Mocks1021.96%
org.apache.maven.scmmaven-scm-provider-gitexeBuild1011.94%
org.springframework.securityspring-security-coreWeb1011.94%
commons-configurationcommons-configurationUtilities961.84%
org.apache.hadoophadoop-commonDB951.82%
org.codehaus.plexusplexus-utilsUtilities951.82%
org.mongodbmongo-java-driverDB941.80%
org.slf4jlog4j-over-slf4jLogging941.80%
org.apache.lucenelucene-coreDB941.80%
com.google.protobufprotobuf-javaUtilities921.76%
org.eclipse.jettyjetty-servletWeb921.76%
org.javassistjavassistAOP921.76%
org.slf4jjul-to-slf4jLogging911.74%
org.powermockpowermock-api-mockitoMocks911.74%
org.slf4jslf4j-jdk14Logging911.74%
com.sun.jerseyjersey-serverWeb891.71%
postgresqlpostgresqlDB871.67%
org.apache.httpcomponentshttpmimeWeb871.67%
com.thoughtworks.xstreamxstreamParsing861.65%
org.assertjassertj-coreTesting861.65%

本文暂时没有评论,来添加一个吧(●'◡'●)

欢迎 发表评论:

最近发表
标签列表