標籤:xml文法 基礎 代碼產生 圖形 相關 圖片 groovy string htm
以下這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這個大世界中正在不斷湧現新的工具、公用程式和庫。如果你的首選工具沒能進入上述名單,歡迎分享。
java程式員常用的八個工具