github上java项目_GitHub上10,000个最受欢迎的Java项目-以下是他们使用的顶级库
github上java項目
隨著Java開發人員使用既成熟又高度發展的語言來工作,無論何時編寫新代碼,我們都將面臨一個持續的困境–使用大家都在談論的熱門新技術,或者堅持使用久經考驗的庫?
由于Java應用程序的很大一部分是商業性質的,因此有時很難將圍繞新框架的討論與實際使用它的項目數量分開。 這很重要,因為圍繞框架的用戶和貢獻者社區是確定其持續成功和發展的最重要因素之一。
我們決定使用基于數據的方法,通過分析開發人員在全球最大的Java項目開放存儲庫GitHub上實際使用的 Java項目,來對此有更深入的了解。
在之前的文章中,我們介紹了GitHub研究項目的主要成果以及JavaScript,Ruby和Java的前100個庫 。 現在,讓我們深入研究數據,尤其是分析Java。
該方法
為了生成我們的數據集,我們查詢了10,000個Java項目,這些項目偏向于社區中最喜歡的項目,以此作為表明其相對重要性的有力指標。 我們使用pom.xml來定義依賴關系,該文件被GH上的絕大多數Java項目所使用。 然后,我們將其分析并歸類。 結果真的很有趣。
結果
完整列表– JavaScript,Ruby和Java的前100個庫
正在記錄 。 最受歡迎的Java庫是slf4j –日志記錄外觀框架,包含3,068個條目。 看來Java GH開發人員已經完全接受了對其日志記錄引擎的分離方法,并已在slf4j上進行了標準化。
由于slf4j本身不是日志記錄引擎,因此查看正在使用的頂級日志記錄引擎也很有用。 看起來“贏家”是log4j – 891個項目正在使用它。 接下來的是Apache Commons-logging,其中包含334個項目。 雖然非常受人尊敬,但這個數字仍代表使用log4j的項目的不到一半。 sfl4j的簡單日志記錄實現在174個項目中排名第三。
當今最受歡迎的Java庫是slf4j-10,000個項目中的30.7%使用了該庫 ( Tweet this )
春天 。 盡管某些人可能認為Spring是一個更成熟,更不流行的“ hip”框架,但它仍被廣泛使用,在前100個庫中排名第15位。由于Spring是一個傘形框架,因此很有趣地看到正在使用哪個組件最多。 Spring測試是框架中最常用的部分(在核心庫之后),包含376個條目。 其次是web-mvc,用于設計具有277個條目的強大的Web應用程序。 在實現Web功能之后,我們將看到帶有218個條目的web-orm,突出顯示了Spring用于構建數據庫支持的Java Web應用程序的關鍵用例。
TDD 。 就在Spring的頂部,是帶有3,068個條目的 JUnit。 這確實顯示了“測試驅動開發”對Java的深遠影響。 看來,如果您是發布代碼的Java開發人員,那么今天的單元測試絕對必要。 還值得注意的是,盡管JUnit在這個領域并不孤單(第二受歡迎的測試框架TestNG ,有331個條目),但它是迄今為止最主要的。
Mockito是基于模擬的測試的流行框架,也獲得了413個條目,贏得了廣泛的歡迎。 EasyMock是另一個模擬框架,在231個項目中排名第二。
Google的Guava框架正成為主流-10,000個Java GitHub項目中有4.8%都在使用它 ( Tweet this )
Apache Commons 。 看過Spring之后,重要的是我們不要忽略Apache Commons,Apache Commons是該語言中最基本的庫之一。 Commons-io和Commons-lang分別以519和504個條目排在前10名中,顯示出它們的普遍性。
總體而言,Apache Commons在前100名中有13個庫。Google的Guava框架本身提供語言實用程序(有些類似于Commons中的工具),在483個條目上也做得很好,將其標記為Java的另一個關鍵構建塊。
Sql&NoSql 。 近幾年來NoSql和Big data一直是熱門話題(有一些很好的理由),因此值得研究一下關系型和NoSql技術的實際使用情況。 那里最受歡迎的Sql DB是帶有225個條目的MySql。 Hibernate ORM雖然本身不??是數據庫,但也很受歡迎,共有181個條目。 這是我們需要牢記的一個領域,因為GH是一個開放源代碼存儲庫,所以我們可能會看到在封閉源數據集中對商業數據庫(如Oracle)的偏向性更大。
證明嗡嗡聲:Hadoop在Java GitHub項目中比在Postgre SQL中更受歡迎 ( Tweet this )
Hadoop在168個條目上也做得很好,這表明在查看其實際使用情況數據時嗡嗡聲是合理的。 透視一下,它具有比Postgre SQL(121個條目)更多的條目,后者是最成熟的關系型開放源代碼數據庫之一。
ElasticSearch是另一種大數據技術,也有110個項目條目。 令人驚訝地注意到,在Ruby中有1,085個條目的sqlite不在Java前100名中。
Android 。 對于GH上的移動開發人員,我們看到228個項目條目通過Maven消耗了Android。 盡管這可以表明沒有很多移動項目放在GH上,但這仍然是Java仍然是非常強大的服務器端語言的有力指示。
對某些結果感到驚訝嗎? 我們知道我們和其中一些人在一起。 查看下面GitHub上排名前100的Java庫的完整列表,并在注釋部分告訴我們您的想法。 我們很想聽聽您的想法和問題。
翻譯自: https://www.javacodegeeks.com/2013/12/githubs-10000-most-popular-java-projects-here-are-the-top-libraries-they-use.html
github上java項目
總結
以上是生活随笔為你收集整理的github上java项目_GitHub上10,000个最受欢迎的Java项目-以下是他们使用的顶级库的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: linux系统ip地址查看(linux系
- 下一篇: 公安备案平台网站(公安备案平台)