自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

2019年排名Top 100的Java類庫——在分析了30073份源碼之后得出的結(jié)論

開發(fā) 開發(fā)工具
最近,OveOps公布了《The 2019 edition of the Top 100 Java packages from GitHub》,作者查看了這份榜單,做了翻譯和補(bǔ)充,向你展示2019年的風(fēng)云Java類庫,希望可以給正在使用Java的你一些幫助和啟示。

[[312662]]

最近,OveOps公布了《The 2019 edition of the Top 100 Java packages from GitHub》,作者查看了這份榜單,做了翻譯和補(bǔ)充,向你展示2019年的風(fēng)云Java類庫,希望可以給正在使用Java的你一些幫助和啟示。不能說榜單中的類庫都是最好的,但是至少是目前比較受歡迎的。

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

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

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

最受歡迎的前10個Java類庫

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

Apache Hadoop,是一款支持?jǐn)?shù)據(jù)密集型分布式應(yīng)用程序并以Apache 2.0許可協(xié)議發(fā)布的開源軟件框架。它支持在商品硬件構(gòu)建的大型集群上運(yùn)行的應(yīng)用程序。Hadoop的框架最核心的設(shè)計(jì)就是:HDFS和MapReduce。HDFS為海量的數(shù)據(jù)提供了存儲,而MapReduce則為海量的數(shù)據(jù)提供了計(jì)算。

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

 

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

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

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

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

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

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

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

  1. #13 – org.pentaho – 提供數(shù)據(jù)管理和分析。 
  2.  
  3. #16 – com.facebook.buck – 一個鼓勵在各種平臺和語言上創(chuàng)建小型可重用模塊的系統(tǒng)。 
  4.  
  5. #21 – com.yahoo.vespa – 雅虎的數(shù)據(jù)處理類庫。 
  6.  
  7. #28 – org.killbill.billing – 一個開源的計(jì)費(fèi)和支付平臺。 
  8.  
  9. #56 – com.baidu.disconf – 百度的分布式配置管理平臺。 

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

  1. #79 – org.glassfish.jersey – 用于用Java開發(fā)RESTful Web服務(wù)。它提供對JAX-RS API的支持,并充當(dāng)JAX-RS參考實(shí)現(xiàn),去年排名#65. 
  2.  
  3. #81 – org.jboss.netty – 一個非阻塞I/O客戶端-服務(wù)器框架,主要用于開發(fā)Java網(wǎng)絡(luò)應(yīng)用程序,如協(xié)議服務(wù)器和客戶端。異步事件驅(qū)動的網(wǎng)絡(luò)應(yīng)用程序框架和工具用于簡化網(wǎng)絡(luò)編程, 去年排名#22. 
  4.  
  5. #85 – org.apache.curator – Apache ZooKeeper的Java庫,去年排名#29 
  6.  
  7. #87 – org.assertj.core –富類型斷言庫,去年排名 #56  
  8.  
  9. #88 – org.xml.sax – Java SAX解析,去年排名#71 
  10.  
  11. #93 – com.codahale.metrics – 一款監(jiān)控指標(biāo)的度量類庫,去年排名#42. 
  12.  
  13. #97 – org.joda.time – 一個標(biāo)準(zhǔn)的日期和時間庫,去年排名#44. 
  14.  
  15. #99 – org.apache.kafka – 一個開源流處理平臺,由Scala和Java編寫。該項(xiàng)目的目標(biāo)是為處理實(shí)時數(shù)據(jù)提供一個統(tǒng)一、高吞吐、低延遲的平臺,去年排名#69. 

那些貢獻(xiàn)較大的組織

為了深入了解我們的頂級Java包,我們逐個查看每個包,試圖了解Java開發(fā)人員正在構(gòu)建什么以及如何構(gòu)建它們。當(dāng)我們?yōu)g覽列表時,有許多供應(yīng)商/所有者多次出現(xiàn),為不同的用途提供各種包。

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

那些貢獻(xiàn)較大的組織的前10名如下:

 

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

另外,在前100名類庫中,我們發(fā)現(xiàn)有4個類庫分別來自3家中國企業(yè),他們分別是:

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

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

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

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

分析方法

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

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

從GitHub中提取的30,073個Java源文件中,我們過濾掉了Android、Arduino、重復(fù)和廢棄的repos。獲得每個項(xiàng)目的源文件后,我們提取惟一的import語句,確保每個項(xiàng)目只計(jì)算一次。最后一步是再次檢查結(jié)果,確保沒有Android、Arduino、deprecated或標(biāo)準(zhǔn)的Java包,然后導(dǎo)出最終的數(shù)字進(jìn)行處理。

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

關(guān)于作者:Hollis,一個對Coding有著獨(dú)特追求的人,現(xiàn)任阿里巴巴技術(shù)專家,個人技術(shù)博主,技術(shù)文章全網(wǎng)閱讀量數(shù)千萬,《程序員的三門課》聯(lián)合作者。

 

責(zé)任編輯:武曉燕 來源: 51CTO專欄
相關(guān)推薦

2018-11-08 15:23:42

Java類庫源碼版本

2019-09-10 20:09:13

2019-07-26 14:12:59

瀏覽器ChromeFirefox

2020-07-27 09:53:22

FlutterReact NativUI庫

2020-08-16 08:57:39

Python IDE編程IDE

2021-02-19 13:10:27

人工智能機(jī)器學(xué)習(xí)工具

2012-12-17 15:19:13

2019-03-28 13:47:35

程序員大數(shù)據(jù)招聘

2018-09-17 14:04:29

AI數(shù)據(jù)科技

2020-05-20 23:35:32

物聯(lián)網(wǎng)應(yīng)用物聯(lián)網(wǎng)IoT)

2019-09-27 09:34:01

AndroidGoogle 移動系統(tǒng)

2020-01-06 09:48:31

Python編程語言代碼

2011-02-25 17:26:51

Android應(yīng)用

2017-12-04 14:50:57

數(shù)據(jù)分析可視化大數(shù)據(jù)

2018-07-19 12:26:20

Serverless無服務(wù)器平臺

2019-03-22 08:12:29

智慧城市物聯(lián)網(wǎng)IoT

2015-10-26 16:18:19

2018-12-04 17:47:07

OpenStack

2021-08-17 08:51:38

機(jī)器學(xué)習(xí)人工智能

2010-01-15 09:41:57

美國專利IBM
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號