天道不一定酬所有勤
但是,天道只酬勤

天津11选5几点开始:2019年排名Top 100的Java類庫——在分析了30073份源碼之后得出的結論

開發十年,就只剩下這套架構體系了??!

天津11选5蛋托玩法 www.ijudhr.com.cn 最近,OveOps公布了《The 2019 edition of the Top 100 Java packages from GitHub》,作者查看了這份榜單,做了翻譯和補充,向你展示2019年的風云Java類庫,希望可以給正在使用Java的你一些幫助和啟示。不能說榜單中的類庫都是最好的,但是至少是目前比較受歡迎的。

距離Java首發以來已經有25年了,它仍然是最流行的編程語言(根據2019年10月TIOBE編程語言排行榜)。

Java存在了很多年,但是并不意味著他不再實用了,很多年來,Java一直在適應開發人員的需求做很多改變。就在今年,Oracle同時發布了Java 12和Java 13,為該語言增加了更多的特性和能力。

正如Java本身的變化一樣,Java語言相關的類庫也在做著各種變化。今年的Java類庫排行榜恰恰證明了這一點。言歸正傳,是時候深入研究一下2019年最熱門的Java類庫了。

2018年排名Top 100的Java類庫——在分析了277,975份源碼之后得出的結論

2017年排名Top 100的Java類庫——在分析了259,885份源碼之后得出的結論

2016年排名Top 100的Java類庫——在分析了47,251個依賴之后得出的結論

最受歡迎的前10個Java類庫

今年的Java類庫排行榜的榜首被hadoop摘得,這個去年第二的類庫,今年終于被扶正了。

Apache Hadoop,是一款支持數據密集型分布式應用程序并以Apache 2.0許可協議發布的開源軟件框架。它支持在商品硬件構建的大型集群上運行的應用程序。Hadoop的框架最核心的設計就是:HDFS和MapReduce。HDFS為海量的數據提供了存儲,而MapReduce則為海量的數據提供了計算。

?

今年的第二名是一個新星——Apache Camel,Apache Camel是一個基于規則路由和中介引擎,提供企業集成模式的Java對象的實現,通過應用程序接口來配置路由和中介的規則。

而去年的第一名fasterXML/Jackson今年降到了第十名。

Jackson是一個JSON庫,可以方便的將JSON轉化成Java的對象模型,以及把Java的對象模型轉換成一串JSON。

前100類庫透露出的主要信息

JUnit的衰落。對我們來說,今年最大的意外是JUnit的衰落。盡管它在2018年并不是第一名,我們也沒料到它會從第三名一路跌到第33名。

Apache的崛起。正如您所看到的,今年的列表中有一些有趣的新名稱,其中最引人注目的是Apache。免費、開源和跨平臺的軟件占據了前5名的位置,包括它的Hadoop包、集成框架Camel、Commons compression API、以內存為中心的分布式數據庫Ignite和HTTP包。

企業單點登錄。前10名中有一個新名字:Apereo。該包提供了一個用于在企業中實現SSO解決方案的開源項目。正如我們所知,在內部實現SSO解決方案可能比較困難,所以這個開源框架被廣泛使用。

榜單中出現了更多新名字。Apereo并不是我們今年看到的唯一一個新名字,有一長串的包已經進入我們的頂級Java列表,比如:

#13 – org.pentaho – 提供數據管理和分析。

#16 – com.facebook.buck – 一個鼓勵在各種平臺和語言上創建小型可重用??櫚南低?。

#21 – com.yahoo.vespa – 雅虎的數據處理類庫。

#28 – org.killbill.billing – 一個開源的計費和支付平臺。

#56 – com.baidu.disconf – 百度的分布式配置管理平臺。

不可能有贏家而沒有輸家,這使得在我們的榜單中,排名靠后的包和靠前的包一樣重要。我們決定把重點放在那些從2018年跌至2019年榜單底部的類庫身上。這些包括:

#79 – org.glassfish.jersey – 用于用Java開發RESTful Web服務。它提供對JAX-RS API的支持,并充當JAX-RS參考實現,去年排名#65.

#81 – org.jboss.netty – 一個非阻塞I/O客戶端-服務器框架,主要用于開發Java網絡應用程序,如協議服務器和客戶端。異步事件驅動的網絡應用程序框架和工具用于簡化網絡編程, 去年排名#22.

#85 – org.apache.curator – Apache ZooKeeper的Java庫,去年排名#29

#87 – org.assertj.core –富類型斷言庫,去年排名 #56 

#88 – org.xml.sax – Java SAX解析,去年排名#71

#93 – com.codahale.metrics – 一款監控指標的度量類庫,去年排名#42.

#97 – org.joda.time – 一個標準的日期和時間庫,去年排名#44.

#99 – org.apache.kafka – 一個開源流處理平臺,由Scala和Java編寫。該項目的目標是為處理實時數據提供一個統一、高吞吐、低延遲的平臺,去年排名#69.

那些貢獻較大的組織

為了深入了解我們的頂級Java包,我們逐個查看每個包,試圖了解Java開發人員正在構建什么以及如何構建它們。當我們瀏覽列表時,有許多供應商/所有者多次出現,為不同的用途提供各種包。

這就是為什么我們決定更廣泛地查看我們的整個數據集,不僅要了解誰是最受歡迎的包,還要了解誰是使用最多的包背后的組織、公司甚至個人。

那些貢獻較大的組織的前10名如下:

?

他們分別是apache、springframework、google、jboss、amazonaws、junit、facebook、yahoo、eclipse、pentaho

另外,在前100名類庫中,我們發現有4個類庫分別來自3家中國企業,他們分別是:

來自百度的com.baidu.disconf (分布式配置管理平臺)

來自微信的weixin.popular.bean(微信SDK)

來自阿里巴巴的com.alibaba.otter(阿里巴巴分布式數據庫同步系統)和com.alibaba.jstorm(阿里巴巴流處理框架)

其中排名最高的是阿里巴巴的otter,排名第19。

分析方法

就像去年一樣,我們使用谷歌BigQuery和GitHub的API來獲取我們想要的數字。我們提取了頂級的存儲庫,并從中提取了這些存儲庫使用的Java包。

BigQuery 是 Google 專門面向數據分析需求設計的一種全面托管的 PB 級低成本企業數據倉庫。該服務讓開發者可以使用Google的架構來運行SQL語句對超級大的數據庫進行操作。BigQuery 可在幾秒內掃描 1 TB 的數據,在幾分鐘內掃描 1 PB 的數據。

從GitHub中提取的30,073個Java源文件中,我們過濾掉了Android、Arduino、重復和廢棄的repos?;竦妹扛魷钅康腦次募?,我們提取惟一的import語句,確保每個項目只計算一次。最后一步是再次檢查結果,確保沒有Android、Arduino、deprecated或標準的Java包,然后導出最終的數字進行處理。

我們過濾了前100個結果,創建了一個新的谷歌電子表格,并寫了這篇文章供您欣賞:https://docs.google.com/spreadsheets/d/1QXw5TILFQCBoB0wxhNAoKabRbUm9C6TE3mD260S_gXY/

(全文完) 歡迎關注『Java之道』微信公眾號
贊(1)
如未加特殊說明,此網站文章均為原創,轉載必須注明出處。天津11选5蛋托玩法 » 2019年排名Top 100的Java類庫——在分析了30073份源碼之后得出的結論
分享到: 更多 (0)

評論 搶沙發

  • 昵稱 (必填)
  • 郵箱 (必填)
  • 網址

HollisChuang's Blog

聯系我關于我