每個Java程式設計師必備的8個開發工具

2015-06-28    分類:JAVA開發、程式設計開發、首頁精華3人評論發表於2015-06-28

本文由碼農網 – 王國峰原創翻譯,轉載請看清文末的轉載要求,歡迎參與我們的付費投稿計劃

現在有很多庫、實用工具和程式任Java開發人員選擇。每個工具都有其優點,但其中有一些因它的知名度、多功能性和有效性從眾多選項中脫穎而出。

以下這8個工具,從程式碼構建到錯誤擠壓,覆蓋Java開發的全域。學習這些工具可以幫助你改善程式碼質量,成為一個更高效的Java開發人員。

1.Eclipse

儘管IntelliJ IDEA、NetBeans和一些其他的IDE正在日益普及,但是有調查表明,Eclipse仍然是幾乎半數Java開發人員首選的開發環境。 Eclipse是IDE領域的瑞士軍刀,有著大量定製的介面和無數的外掛。它無處不在,後面本文將推薦的其他所有工具都提供Eclipse外掛。

Eclipse的工作流程可分為三個方面:工作臺,工作空間和視角。工作臺作為到IDE的出發點。工作空間將專案、檔案和配置設定組合在一個單獨的目錄下。視角定義工具、檢視和有效設定。雖然新手開發人員可能會覺得相比Netbeans和IntelliJ IDEA,Eclipse使用起來更難,但Eclipse的靈活性,使其成為企業開發的首選IDE。

Luna,Eclipse的最新版本,支援Java 8、分屏編輯、新的黑色主題,以及一個功能齊全的命令列終端。

官方網站:https://eclipse.org/

2.Gradle

Gradle是一個自動化專案工具,建立在Apache Maven和Apache Ant的功能上。雖然Gradle並不是最流行的構建工具(最流行的是Maven,64%的Java開發人員會選擇它),但它的普及速度很快。它也可作為預設的Android構建工具。

Gradle引以為傲的是它的簡單。Gradle使用Groovy程式語言,與Maven和Ant使用XML語法截然相反。一個基本的Gradle構建檔案由一行簡單的程式碼組成:

apply plugin: 'java'.

下面的命令會生成一個Gradle構建檔案,建立專案檔案的目錄樹,並附帶一個專案行動式Gradle封裝:

$ gradle init --type java-library

Gradle還有可用於新增新的語言,生成支援IDE的專案檔案,構建本地二進位制文件,檢查依賴性更新等等的外掛。

想要了解更多資訊,請參見Gradle的Java / JVM入門指南

官方網站:https://gradle.org/

3.Javadoc

Javadoc是Oracle提供的文件生成器。它可以將特殊格式的註釋解析為HTML文件。以下截圖就是Javadoc生成的Java SE 8 API規範:

Javadoc註釋使用開放標籤、關閉標籤,以及一個或多個描述性標籤的格式。開放式標籤類似於標準Java多行註釋標記,使用兩個星號的除外。Javadoc也解析普通的HTML標籤。

Javadoc自動格式化標籤和關鍵字,除非另有規定。Javadoc廣泛使用超連結,允許你參考和連結到程式碼的不同區域。許多IDE——包括Eclipse——可以自動新增Javadoc註釋模組到變數、類和方法中。支援Maven、Gradle和Ant的外掛在編譯程式碼的同時也可以構建Javadoc HTML。

想要了解更多資訊,請參閱Oracle關於如何為Javadoc工具寫文件註釋的文章。

官方網站:http://www.oracle.com/technetwork/java/javase/documentation/index-jsp-135444.html

4.JUnit

JUnit是用於編寫和執行單元測試的開源框架。一個基本的JUnit測試包括測試類、測試方法、以及執行測試的功能。 JUnit使用標註來確定測試如何構造和執行。例如,如果你的程式有一個類叫做MathClass,具有乘法和除法的方法,你可以建立JUnit測試來檢查不符合預期的值。輸入數字2和5到乘法方法,你希望得到的結果為10。當輸入0作為除法方法的第二個引數時,你會期望給出一個數字計算異常的警告因為除數不能為0:

@Test標註規定,MathClass方法是一個測試用例。 在JUnit提供額外的標註,比如@Before,這樣你就可以在測試執行之前設定環境。 JUnit還可以設定規則用於定義測試方法的行為。例如,TemporaryFolder規則使得一旦測試完成,由測試建立的檔案或資料夾就會被刪除。

想要了解更多資訊,請參考JUnit入門。 此外還有使用JUnit單元測試的教程。

官方網站:http://junit.org/

5.Cobertura

Cobertura可用於分析Java程式碼的測試覆蓋率。Cobertura根據沒有被測試覆蓋的程式碼生成基於HTML的報告。

Cobertura提供可用於插裝、檢查和測試程式碼的工具。通過監控可測試的程式碼,Cobertura允許你使用你選擇的測試框架,甚至不需要測試框架就可以執行程式。

Cobertura根據行、分支和程式包三個方面給出程式碼覆蓋報告。每個類別都有一個可自定義的閾值,如果覆蓋面低於閾值,就會觸發警告。Cobertura還整合了Maven和Gradle 的自動檢測功能。

Mkyong.com提供了一個將Cobertura與Maven整合的示例

官方網站:http://cobertura.github.io/cobertura/

6.FindBugs

FindBugs是一個匹配編譯程式碼模式,而非使用bug資料庫的工具。當提供原始碼時,FindBugs還可高亮顯示檢測出bug的程式碼行。

在它的3.0.1版本中,FindBugs繼續保持著數以百計的bug描述。根據bug的嚴重程度,FindBugs將bug分為四個水平:相關的,令人困擾的,可怕的,以及最可怕的。除了圖形使用者介面,FindBugs還提供一個命令列介面,Ant任務,以及Eclipse外掛。

官方網站:http://findbugs.sourceforge.net/

7.VisualVM

包含在JDK中的VisualVM是監控和審查Java應用程式效能的工具。 VisualVM檢測並重視活躍的JVM例項來檢索有關程式的診斷資訊。

VisualVM可以很容易地實時診斷效能問題。它提供了全套的分析工具,包括JConsole、jstack、jmap、jinfo和jstat等。此外,你還可以對JVM做一個快照,這樣以後在任何時都能審查。

官方網站:http://visualvm.java.net/

8.Groovy

Groovy是一種程式語言,通過新增新的關鍵字,自動匯入常用的類,以及可選型別變數宣告,既簡化又擴充套件了Java。

Groovy的核心優勢之一是它的指令碼功能。類可以被編譯為Java位元組碼或使用Groovy Shell動態執行。Groovy的Java基礎使得它相較於Jython和JRuby更容易為Java開發人員所接受。

想要了解更多資訊,請參見Groovy的入門指南

官方網站:http://www.groovy-lang.org/

其他選擇

Java這個大世界中正在不斷湧現新的工具、實用程式和庫。如果你的首選工具沒能進入上述名單,歡迎分享。

譯文連結:http://www.codeceo.com/article/8-java-toolkit.html
英文原文:8 Tools for Every Java Developer’s Toolkit
翻譯作者:碼農網 – 王國峰
轉載必須在正文中標註並保留原文連結、譯文連結和譯者等資訊。]

相關文章