2014年 Java 工具和技術(shù)概覽
導(dǎo)讀
本文是ZeroTurnaround針對Java工具和技術(shù)的年度調(diào)查。通過問卷和數(shù)據(jù)分析,可以清晰地了解到目前Java社區(qū)在工具和技術(shù)上的使用情況。
簡短概述
這個調(diào)查很有意義。超出了任何以往的回復(fù)率,并且每一個完成的調(diào)查都會捐款到慈善機(jī)構(gòu)。我們很喜歡做這件事。你知道這是ZeroTurnaround的Java開發(fā)研究報告的第五年了嗎?開香檳慶祝一下吧!
這個系列的調(diào)查始于2009年,以一個關(guān)于Java應(yīng)用服務(wù)器重啟速度的調(diào)查開始。隨著每年調(diào)查的不斷深入,在2012年發(fā)展為對行業(yè)布局的深入探索,并發(fā)表成為第一篇研究文獻(xiàn)。在2013年,我們面對兩個真正影響高效軟件架構(gòu)的普遍問題:軟件質(zhì)量(是否有bug?)和交付預(yù)期(上個星期還是明年?)。我們從那個調(diào)查中收獲了很多!
但現(xiàn)在我們覺得是時間去回顧這段時間Java的眾多工具和技術(shù)藍(lán)圖,收集數(shù)據(jù)并整理出數(shù)字,看看當(dāng)今市場大致發(fā)生了什么。有什么比直接扔給你一個巨大的包含2014年5月的工具和技術(shù)的表格更好的方式呢…咔嚓!
注意:在使用這些研究數(shù)據(jù)時,需要有自己負(fù)責(zé)甄別。由DSS 計算出來的錯誤示例為2.1%,但自從我們進(jìn)行了自選擇的例子后,雖然我們也提供了看起來似乎很有行業(yè)代表性的研究數(shù)據(jù),它并不能確保完全隨機(jī)并且可能包含一些可能無法判斷的錯誤。
這份報告總共56頁,真的可以看做是一本書。我們建議你下載并隨機(jī)攜帶。
切入:這段時間Java究竟發(fā)生了什么
親愛的讀者,對你們來說這真是一個好機(jī)會,可以使用任何一個頂尖的技術(shù),讓我們直接來看上面14個種類的頂尖工具和技術(shù)。
可以猜到,在某些分類中,多個工具會經(jīng)常結(jié)合使用,因此我們允許多選(由*表示)。對于回答者選擇不使用并達(dá)到統(tǒng)計上較為重要的部分(超過5%),回答中也已經(jīng)被規(guī)范化(由º表示)來去除一些非用戶群體。
這并不奇怪。在我們調(diào)查的2164位開發(fā)人員中,Java SE 7 (65%)被超過3分之2的開發(fā)人員使用,但更多人正在使用JUnit (82.5%),這是整個Java技術(shù)藍(lán)圖中最廣泛使用的單一技術(shù)。另外一個好事是:單元測試是保證你們的應(yīng)用沒問題的關(guān)鍵。接下來的是JenKins (70%),我們最喜歡的管家,它被四分之三的使用持續(xù)集成工具的開發(fā)人員使用(5分之1的人不使用)。我們看到分布式VCS在最近幾年發(fā)展很快,Git (60%)被3分之2的開發(fā)人員配合使用,通常和Subversion (57%)。
考慮下一組合的技術(shù),他們的竟?fàn)幵谟谄髽I(yè)Java領(lǐng)域 — Hibernate (67.5%),Maven and Nexus (64%),Tomcat (50%)和Eclipse (48)或多或少地可以給你一個基本企業(yè)開發(fā)棧。
但不要以為已經(jīng)得出結(jié)論了……因為在這個報告中,我們針對某些特定技術(shù)的真實感受進(jìn)行了提問。
#p#
2014年Java工具和技術(shù)排行榜
- **JUnit – 82.5%*** – 最多開發(fā)人員使用的測試框架
- Jenkins – 70%º – 行業(yè)最廣泛使用的CI服務(wù)器
- **Git – 69%*** – 第一的版本控制技術(shù)
- Hibernate – 67.5%* /º – 最廣泛使用的ORM框架
- Java 7 – 65% – SE開發(fā)的行業(yè)領(lǐng)導(dǎo)者
- Maven – 64% – Java中最多使用的構(gòu)建工具
- Nexus – 64%º – 開發(fā)人員使用的主要資源庫
- MongoDB – 56%º – NoSQL技術(shù)的首要選擇
- FindBugs – 55%* /º – Java中最多使用的靜態(tài)代碼分析工具
- Tomcat – 50%º – 市面上最流行的應(yīng)用服務(wù)器
- Java EE 6 – 49%º – 在大多數(shù)的企業(yè)Java環(huán)境中都可以找到
- Eclipse – 48% – 使用多于其他的IDE
- Spring MVC – 40%* /º – 最常用的web框架
- MySQL – 32%º – 最流域的SQL技術(shù)
開發(fā)人員真正感興趣的技術(shù)是什么?
他們最感興趣去學(xué)習(xí)的另外一個JVM語言是(Scala – 47%),他們愿意使用的IDE是(IntelliJ IDEA Ultimate – 49%)和愿意學(xué)習(xí)的構(gòu)建工具是(Gradle – 58%)。
Java 8是35%的參與者的公司在接下來兩年的首選。有趣的事,回應(yīng)中考慮IDE — 最經(jīng)常使用的開發(fā)工具 — 不再忠于開源,而是更偏向商業(yè)版本的IntelliJ IDEA。
總的來說,有很強(qiáng)的跡象表示這四個技術(shù)已經(jīng)被認(rèn)為是開發(fā)的強(qiáng)制標(biāo)配。
我們怎么進(jìn)行調(diào)查
如果你真的不關(guān)心方法,可以跳過直接到達(dá)統(tǒng)計的開始部分。但在我們看數(shù)字之前,來看看我們是怎么進(jìn)行調(diào)查的,誰回復(fù)了,我們怎么讓他們和我們分享信息的。
開始前,我們必須承認(rèn),做調(diào)查真的沒那么激動,對吧?最好的情況下,他們很快完成,并且不問你一些過于私人的問題。剛開始的時候,我們自信得認(rèn)為這個調(diào)查會比之前的任何一個都得到更好的回應(yīng)。為什么?因為我們努力去把它做得更好,我們集中精力通過下面的手段提升用戶體驗:
- 找到最好的被調(diào)查者去詢問
- 引入有意義的激勵
- 使用可能最好的調(diào)查工具
被調(diào)查者說
自從我們上次最重要的啟動后RebelLabs已經(jīng)發(fā)展了很多,其中包含了一定數(shù)量的雇傭調(diào)查人員,優(yōu)秀的極客顯然很關(guān)心和別人一起學(xué)習(xí)和分享。除 了問RebelLabs的訂閱者以外,我們還讓Simon Maple — Virtual JUG的創(chuàng)始人幫我們在那里和更廣的用戶群社區(qū)(包括London Java Community (LJC)中去傳播。在這之后,我們讓朋友和支持者們在Twiter,F(xiàn)acebook,Google+,LinkedIn和DZone等傳播消息,但這 并沒有起到很好的效果,我們想,沒有合適的激勵真是有很大的關(guān)系。
#p#
找到正確的激勵方案讓他們?nèi)⑴c
盡管很多公司/組織持續(xù)在做著這樣的事,但送出iPad,Kindle或者遙控直升機(jī)并不是最有效的吸引極客的方式。首先,軟件工程師是一群相對高收入的人群,并且有錢的極客通常都會在他們需要的時候去買這些東西,而這遠(yuǎn)早于那些公司覺得送出這些東西很酷的時候。
其次,不需要或不想要昂貴禮物的特權(quán)階層都不情愿因為個人的需要去回應(yīng)這些活動。畢竟他們都是好人:那為什么不做一些需要極客給予的事情呢?在這種情況下,我們承諾每一份完成的調(diào)查,我們都會捐助$0.5美元到Child’s Play,它是一個捐贈游戲和娛樂系統(tǒng)給醫(yī)院的孩子的慈善機(jī)構(gòu)。在這之后人數(shù)激增。
通過最好的調(diào)查軟件使它變得有趣
另一個重要的部分是嘗試使調(diào)查更有趣!通過我們之前使用的工具,如Survey Monkey和Poll Daddy,我們看到很強(qiáng)大的功能和復(fù)雜的邏輯,但是它犧牲了使用的簡單性。當(dāng)在查找一些替代品時,我們很快地發(fā)現(xiàn)了Typeform, 一個在西班牙的調(diào)查科技初創(chuàng)公司,它告訴我們,我們可以做一個好看的調(diào)查,并且很快地自定義來使用我們自己的圖表和顏色方案。在5分鐘的嘗試中,我們覺得 我們可以通過做一個好看的資料表格來更好的吸引參與者:調(diào)查進(jìn)行地很流暢,在移動設(shè)備上也可以很好看,并且可以讓你使用按鍵來選擇等。
不管怎樣,2164名軟件專業(yè)人員完成了調(diào)查,得到了超過$1082的捐款給我們樂意去捐助的慈善機(jī)構(gòu)。接下來,讓我們來看一下他們是誰,他們在用什么工具和技術(shù)。
#p#
樣本人口統(tǒng)計
對,關(guān)于這些統(tǒng)計,我最后可以想起來的記憶只是:我們的2164名受訪者中大部分是軟件開發(fā)人員,做web相關(guān)的應(yīng)用程序,使用Android手機(jī)和Windows。誰會想到呢?:-D
– OLIVER WHITE, RebellLabs領(lǐng)頭
在我們決定你正在使用什么之前,最好 - 或者至少有禮貌 - 找出一些關(guān)于你是誰和你正在做什么。
在超過一個月的時間內(nèi),總共有2164名軟件專業(yè)人員回應(yīng)了我們的調(diào)查。我們嘗試去深入挖掘看在統(tǒng)計數(shù)據(jù)后是否有隱藏著什么重要的聯(lián)系 — 如基于工作內(nèi)容不同,應(yīng)用類型或者手機(jī)設(shè)備系統(tǒng)會不同,但數(shù)字沒有展示任何有趣的東西。
這段時間的開發(fā)被web應(yīng)用(71%)統(tǒng)治并不奇怪,因為有很多可見的趨勢都這樣顯示。但如果你往回想,誰在做這些庫和框架(15%)?開發(fā)人員中 7個中就有1個在做這個。很奇怪。桌面應(yīng)用(11%)繼續(xù)大量減少,因為更易于嘗試,并且不需要額外下載的云端在持續(xù)擴(kuò)散。最后,有一些在做手機(jī)應(yīng)用 (3%)。想必大部分手機(jī)應(yīng)用開發(fā)人員不是選擇Java ME(SE內(nèi)嵌),而是Dalvik(Android)或者iOS。
就工作角色/職位/職稱來說,軟件開發(fā)人員(65%)占了幾乎3分之2的參與者。多于4分之1的參與者在更高級的職位如系統(tǒng)架構(gòu)師(14%)或者團(tuán) 隊主管/項目經(jīng)理(13%),剩余的是咨詢?nèi)藛T(例如,獨(dú)立承包商),操作人員,QA或者其他(一些專家權(quán)威,”DevOps架構(gòu)師”,”Chief Code Officer”或者其他類似各式各樣的)。
問到參與者工作站和移動手機(jī)操作系統(tǒng)的問題時很有趣 — 沒什么特別驚喜的:Microsoft Windows(50%)被操過一半的參與者使用,雖然預(yù)測接下來5年會在工作站上發(fā)生什么事會很有趣,但此時Linux/Unix(26%)和 Apple OS X(24%)或多或少地均分了剩余的份額。對于手機(jī)OS,Google Android(66%)控制了3分之2的市場,而獨(dú)占并且更貴的Apple iOS(27%)被微微超過4分之1的人使用。另外的手機(jī)系統(tǒng)(7%),就是Blackberry和Windows Mobile,組成了剩余的部分,但很明顯我們不在科。;-)
注意:
我們問到開源項目的提交人員時,很驚訝地發(fā)現(xiàn)高達(dá)31%的開發(fā)人員說他們正在做開源項目,這也說明比起一般的開發(fā)人員,我們更愿意與這些杰出的軟件開發(fā)人員合作,盡管這已經(jīng)是一個滿足期望的現(xiàn)象!:)
原文鏈接: zeroturnaround
翻譯: ImportNew.com - 陳曉舜