很多未解之谜终于有答案了——2018年JVM生态系统报告出炉
在Java開發(fā)者中,一直存在著很多鄙視鏈。如:
IntelliJ → Eclipse → NetBeans
Unix → Linux → Mac OS→ Windows → DOS
Emacs → Vim → Sublime → Word → Power Point
這諸多鄙視鏈中一直存在著很大的爭議
也正是存在諸多爭議,導(dǎo)致很多開發(fā)者更加迷茫
到底選擇IntelliJ還是Eclipse?
Java 11 出來了,我要不要升級?
聽說SSH過時(shí)了?那Hibernate還要不要學(xué)了?
Git和SVN,Maven和Gradle,到底如何選?
筆者無法給出明確的答案,只能給你一些建議。
今日,SNYC出爐了一份2018年JVM生態(tài)系統(tǒng)報(bào)告
涉及到了很多一直困擾廣大Javaer的問題
讓我們一起來看一下,全世界的廣大開發(fā)者是如何解決這些世紀(jì)難題的。
生產(chǎn)環(huán)境中主要使用哪個(gè)廠商提供的JDK?
很多廠商都提供了自己的JDK實(shí)現(xiàn),到底哪個(gè)廠商提供的JDK更受開發(fā)者青睞呢,調(diào)查發(fā)現(xiàn),Oracke JDK以70%的絕對優(yōu)勢占據(jù)了主導(dǎo)地位。

生產(chǎn)環(huán)境中主要使用哪個(gè)版本的Java SE
目前,Java SE 官方版本已經(jīng)更新到了 Java 11,但是,光大開發(fā)者主要使用的版本是哪個(gè)呢?

調(diào)查發(fā)現(xiàn),80%左右的用戶使用的Java SE 8。
到底如何選擇Java版本?

最多的人選擇使用LTS版本。目前最新的LTS版本分別是Java 11 和Java 8。
主要是用了哪個(gè)IDE?
這個(gè)問題一直是一個(gè)未解之謎,Eclipse和IntelliJ IDEA之爭由來已久,一直沒有定論。

今年調(diào)查報(bào)告顯示,45%的用戶選擇IntelliJ IDEA,其中大部分用戶使用的是付費(fèi)的社區(qū)版,小部分用戶使用免費(fèi)的專業(yè)版。
主要是用哪個(gè)構(gòu)建工具

相比之下,Maven還是占據(jù)著主導(dǎo)地位,超過半數(shù)用戶仍然傾向于Maven。
主要使用哪個(gè)靜態(tài)代碼掃描工具

前三名分別是Sonar 、FindBugs和Checkstyle。
主要使用哪個(gè)持續(xù)集成工具

主要使用哪個(gè)代碼托管工具
目前Git+SVN已經(jīng)占據(jù)了總數(shù)的90%,其中大部分開發(fā)者首選Git,已經(jīng)遙遙領(lǐng)先于SVN了。 
主要使用哪種單元測試工具
目前市面上單元測試相關(guān)的工具有很多,其中最受歡迎的還是JUnit,其次是MOCK框架Mockito。 
主要使用哪種開發(fā)框架
在Java生態(tài)系統(tǒng)中,Spring已經(jīng)是占據(jù)了無可撼動的地位。隨著微服務(wù)等概念的越來越火,Spring Boot等也是越來越受歡迎了。主流的框架已經(jīng)從SSH演化成 Spring全家桶。 
主要使用哪種ORM框架
Java開發(fā)是離不開ORM框架的,幾乎很少有開發(fā)者通過JDBC進(jìn)行數(shù)據(jù)庫操作的。
目前使用最廣泛的ORM框架還是老大哥Hibernate。 
主要使用哪種數(shù)據(jù)庫

數(shù)據(jù)上面,使用最多的還是Oracle,第二名是MySql
主要使用哪種應(yīng)用服務(wù)器
在應(yīng)用服務(wù)器的選擇上,超過40%的用戶選擇Tomcat。Tomcat、Jboss、Jetty包攬了前三甲。

開發(fā)者年齡分布
目前,開發(fā)者的普遍年齡在30+,其中30-40歲的開發(fā)者占總數(shù)的40%左右。

主要使用的學(xué)習(xí)網(wǎng)站
開發(fā)者主要通過StackOverflow進(jìn)行學(xué)習(xí),俗稱面向StackOverflow編程。

頒獎時(shí)間
以下是關(guān)于以上調(diào)查報(bào)告的總結(jié)。下圖中的12個(gè)獲勝者你都有在用嗎?

如果您在今后的開發(fā)中,需要做技術(shù)選型的時(shí)候,可以參考這份調(diào)查報(bào)告。
總結(jié)
以上是生活随笔為你收集整理的很多未解之谜终于有答案了——2018年JVM生态系统报告出炉的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 如何领导团队做好技术债管理?
- 下一篇: Hadoop Yarn内存使用优化配置