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

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

在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%的絕對優勢佔據了主導地位。


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

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


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

到底如何選擇Java版本?


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

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

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


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

主要是用哪個構建工具



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

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


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

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



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


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

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


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

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


主要使用哪種開發框架

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


主要使用哪種ORM框架

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

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


主要使用哪種資料庫



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

主要使用哪種應用伺服器

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


開發者年齡分佈

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


主要使用的學習網站

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


頒獎時間

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


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

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