很多未解之謎終於有答案了——2018年JVM生態系統報告出爐

java填坑路發表於2018-11-13

在Java開發者中,一直存在著很多鄙視鏈。如:

IntelliJ → Eclipse → NetBeans

Unix → Linux → Mac OS→ Windows → DOS

Emacs → Vim → Sublime → Word → Power Point

這諸多鄙視鏈中一直存在著很大的爭議

也正是存在諸多爭議,導致很多開發者更加迷茫

到底選擇IntelliJ還是Eclipse?

Java 11 出來了,我要不要升級?

聽說SSH過時了?那Hibernate還要不要學了?

Git和SVN,Maven和Gradle,到底如何選?

我今年30歲了,還要繼續做開發嗎?

筆者無法給出明確的答案,只能給你一些建議。

近日,SNYC出爐了一份2018年JVM生態系統報告

涉及到了很多一直困擾廣大Javaer的問題

讓我們一起來看一下

全世界的廣大開發者是如何解決這些世紀難題的?

生產環境中主要使用哪個廠商提供的JDK

很多廠商都提供了自己的JDK實現,到底哪個廠商提供的JDK更受開發者青睞呢,調查發現,Oracke JDK以70%的絕對優勢佔據了主導地位。

img_b5599d52dd96df72c5d051d4b197c85c.jpe

生產環境中主要使用哪個版本的Java SE

目前,Java SE 官方版本已經更新到了 Java 11,但是,光大開發者主要使用的版本是哪個呢?

img_a382f878a81f086bfb771705b78bf91d.jpe

調查結果顯示,80%左右的使用者使用的Java SE 8。

到底如何選擇Java版本?

img_6b9af7444af77e922833beec2d5f5fef.jpe

有新的版本JDK出來了,要不要升級這件事或許這份報告中可以有個答案。關於如何選擇Java版本上,最多的人選擇使用LTS(長期支援版本)版本。目前最新的LTS版本分別是Java 11 和Java 8。

日常開發中,主要使用哪個IDE

這個問題一直是一個未解之謎,Eclipse和IntelliJ IDEA之爭由來已久,一直沒有定論。

img_c8c045caf25543def6eeba6f7a8e511a.jpe

今年調查報告顯示,45%的使用者選擇IntelliJ IDEA,其中小部分使用者使用的是免費的社群版,大部分使用者使用付費的專業版。那麼,還在使用Eclipse的你要不要”棄暗投明”呢?

主要是用哪個構建工具


img_6cd87e1b1259936d2fff7ad0988d406a.jpe

相比之下,Maven還是佔據著主導地位,超過半數使用者仍然傾向於Maven。

主要使用哪個靜態程式碼掃描工具


img_ac1cdce4116f3026cdd86dec20bd5371.jpe

靜態程式碼掃描工具的選擇,前三名分別是Sonar 、FindBugs和Checkstyle。這三種工具均提供IDE外掛,還沒使用的小夥伴可以考慮用起來了。

主要使用哪個持續整合工具


img_1d0484b9ad2faeaca719d7ad4f6ea923.jpe

持續整合方面,超過半數的開發者使用Jenkins,這個結果並不出乎意料。

主要使用哪個程式碼託管工具

目前Git+SVN已經佔據了總數的90%,其中大部分開發者首選Git,已經遙遙領先於SVN了。

img_5582245ba6dbfe539e202973d71e6be0.jpe

主要使用哪種單元測試框架

目前市面上單元測試相關的工具有很多,其中最受歡迎的還是JUnit,其次是MOCK框架Mockito。

img_ca783412c6c8c20dfa9da9829099dbb3.jpe

主要使用哪種開發框架

在Java生態系統中,Spring已經是佔據了無可撼動的地位。隨著微服務等概念的越來越火,Spring Boot等也是越來越受歡迎了。主流的框架已經從SSH演化成 Spring全家桶。

img_64c38ad4735369b3cf9f3b70695c930a.jpe

主要使用哪種ORM框架

Java開發是離不開ORM框架的,幾乎很少有開發者通過JDBC進行資料庫操作的。

目前使用最廣泛的ORM框架還是老大哥Hibernate。

img_f68822b4c1f4d0fee4742c1ff0feb4cf.jpe

主要使用哪種資料庫



img_b7d2d9ecacfa9c733cbebaa0f5d20200.jpe

資料上面,使用最多的還是Oracle,第二名是MySql

主要使用哪種應用伺服器

在應用伺服器的選擇上,超過40%的使用者選擇Tomcat。Tomcat、Jboss、Jetty包攬了前三甲。

img_ffbdf6a82fef28a4f8731565a9cff4ed.jpe

開發者年齡分佈

目前,開發者的普遍年齡在30+,其中30-40歲的開發者佔總數的40%左右。那些嚷嚷著開發者幹到30歲要轉行的人可以閉嘴了。

img_1a42dce46f371fb6f13859166e6d2b74.jpe

主要使用的學習網站

開發者主要通過StackOverflow進行學習,俗稱面向StackOverflow程式設計。

img_1fc328e47f5538535deec6b4492357f7.jpe

頒獎時間

以下是關於以上調查報告的總結。下圖中的12個獲勝者你都有在用嗎?

img_9722b243c376a4481cc32a00784e3376.jpe

如果您在今後的開發中,需要做技術選型的時候,可以參考這份調查報告。

那麼問題來了,你和廣大開發者的選擇一致嗎?

歡迎工作一到五年的Java工程師朋友們加入Java填坑之路:860113481

群內提供免費的Java架構學習資料(裡面有高可用、高併發、高效能及分散式、Jvm效能調優、Spring原始碼,MyBatis,Netty,Redis,Kafka,Mysql,Zookeeper,Tomcat,Docker,Dubbo,Nginx等多個知識點的架構資料)合理利用自己每一分每一秒的時間來學習提升自己,不要再用”沒有時間“來掩飾自己思想上的懶惰!趁年輕,使勁拼,給未來的自己一個交代!


相關文章