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