- 相關(guān)推薦
java程序員必備八大開(kāi)發(fā)工具
現在有很多庫、實(shí)用工具和程序任Java開(kāi)發(fā)人員選擇。每個(gè)工具都有其優(yōu)點(diǎn),但其中有一些因它的知名度、多功能性和有效性從眾多選項中脫穎而出。以下這8個(gè)工具,從代碼構建到錯誤擠壓,覆蓋Java開(kāi)發(fā)的全域。學(xué)習這些工具可以幫助你改善代碼質(zhì)量,成為一個(gè)更高效的Java開(kāi)發(fā)人員?靵(lái)看看吧!
一、Eclipse
盡管IntelliJ IDEA、NetBeans和一些其他的IDE正在日益普及,但是有調查表明,Eclipse仍然是幾乎半數Java開(kāi)發(fā)人員首選的開(kāi)發(fā)環(huán)境。 Eclipse是IDE領(lǐng)域的瑞士軍刀,有著(zhù)大量定制的接口和無(wú)數的插件。它無(wú)處不在,后面本文將推薦的其他所有工具都提供Eclipse插件。
Eclipse的工作流程可分為三個(gè)方面:工作臺,工作空間和視角。工作臺作為到IDE的出發(fā)點(diǎn)。工作空間將項目、文件和配置設置組合在一個(gè)單獨的 目錄下。視角定義工具、視圖和有效設置。雖然新手開(kāi)發(fā)人員可能會(huì )覺(jué)得相比Netbeans和IntelliJ IDEA,Eclipse使用起來(lái)更難,但Eclipse的靈活性,使其成為企業(yè)開(kāi)發(fā)的首選IDE。
Luna,Eclipse的最新版本,支持Java 8、分屏編輯、新的黑色主題,以及一個(gè)功能齊全的命令行終端。
網(wǎng)站:https://eclipse.org/
二、Gradle
Gradle是一個(gè)自動(dòng)化項目工具,建立在A(yíng)pache Maven和Apache Ant的功能上。雖然Gradle并不是最流行的構建工具(最流行的是Maven,64%的Java開(kāi)發(fā)人員會(huì )選擇它),但它的普及速度很快。它也可作為默認的Android構建工具。
Gradle引以為傲的是它的簡(jiǎn)單。Gradle使用Groovy編程語(yǔ)言,與Maven和Ant使用XML語(yǔ)法截然相反。一個(gè)基本的Gradle構建文件由一行簡(jiǎn)單的代碼組成:
apply plugin: 'java'.
下面的命令會(huì )生成一個(gè)Gradle構建文件,創(chuàng )建項目文件的目錄樹(shù),并附帶一個(gè)項目便攜式Gradle封裝:
$ gradle init --type java-library
Gradle還有可用于添加新的語(yǔ)言,生成支持IDE的項目文件,構建本地二進(jìn)制文檔,檢查依賴(lài)性更新等等的插件。
想要了解更多信息,請參見(jiàn)Gradle的Java / JVM入門(mén)指南。
網(wǎng)站:https://gradle.org/
三、Javadoc
Javadoc是Oracle提供的文檔生成器。它可以將特殊格式的注釋解析為HTML文檔。以下截圖就是Javadoc生成的Java SE 8 API規范:
Javadoc注釋使用開(kāi)放標簽、關(guān)閉標簽,以及一個(gè)或多個(gè)描述性標簽的格式。開(kāi)放式標簽類(lèi)似于標準Java多行注釋標記,使用兩個(gè)星號的除外。Javadoc也解析普通的HTML標簽。
Javadoc自動(dòng)格式化標簽和關(guān)鍵字,除非另有規定。Javadoc廣泛使用超鏈接,允許你參考和鏈接到代碼的不同區域。許多IDE——包括 Eclipse——可以自動(dòng)添加Javadoc注釋模塊到變量、類(lèi)和方法中。支持Maven、Gradle和Ant的插件在編譯代碼的同時(shí)也可以構建 Javadoc HTML。
想要了解更多信息,請參閱Oracle關(guān)于如何為Javadoc工具寫(xiě)文檔注釋的文章。
網(wǎng)站:http://www.oracle.com/technetwork/java/javase/documentation/index-jsp-135444.html
四、JUnit
JUnit是用于編寫(xiě)和運行單元測試的開(kāi)源框架。一個(gè)基本的JUnit測試包括測試類(lèi)、測試方法、以及執行測試的功能。 JUnit使用標注來(lái)確定測試如何構造和運行。
例如,如果你的程序有一個(gè)類(lèi)叫做MathClass,具有乘法和除法的方法,你可以創(chuàng )建JUnit測試來(lái)檢 查不符合預期值。輸入數字2和5到乘法方法,你希望得到的結果為10。當輸入0作為除法方法的第二個(gè)參數時(shí),你會(huì )期望給出一個(gè)數字計算異常的警告因為除數不能為0:
@Test標注規定,MathClass方法是一個(gè)測試用例。 在JUnit提供額外的標注,比如@Before,這樣你就可以在測試運行之前設置環(huán)境。 JUnit還可以設置規則用于定義測試方法的行為。例如,TemporaryFolder規則使得一旦測試完成,由測試創(chuàng )建的文件或文件夾就會(huì )被刪除。
想要了解更多信息,請參考JUnit入門(mén)。 此外還有使用JUnit單元測試的教程。
網(wǎng)站:http://junit.org/
五、Cobertura
Cobertura可用于分析Java代碼的測試覆蓋率。Cobertura根據沒(méi)有被測試覆蓋的代碼生成基于HTML的報告。
Cobertura提供可用于插裝、檢查和測試代碼的工具。通過(guò)監控可測試的代碼,Cobertura允許你使用你選擇的測試框架,甚至不需要測試框架就可以運行程序。
Cobertura根據行、分支和程序包三個(gè)方面給出代碼覆蓋報告。每個(gè)類(lèi)別都有一個(gè)可自定義的閾值,如果覆蓋面低于閾值,就會(huì )觸發(fā)警告。Cobertura還集成了Maven和Gradle 的自動(dòng)檢測功能。
Mkyong.com提供了一個(gè)將Cobertura與Maven整合的示例。
網(wǎng)站:http://cobertura.github.io/cobertura/
六、FindBugs
FindBugs是一個(gè)匹配編譯代碼模式,而非使用bug數據庫的工具。當提供源代碼時(shí),FindBugs還可高亮顯示檢測出bug的代碼行。
在它的3.0.1版本中,FindBugs繼續保持著(zhù)數以百計的bug描述。根據bug的嚴重程度,FindBugs將bug分為四個(gè)水平:相關(guān) 的,令人困擾的,可怕的,以及最可怕的。除了圖形用戶(hù)界面,FindBugs還提供一個(gè)命令行界面,Ant任務(wù),以及Eclipse插件。
網(wǎng)站:http://findbugs.sourceforge.net/
七、VisualVM
包含在JDK中的VisualVM是監控和審查Java應用程序性能的工具。 VisualVM檢測并重視活躍的JVM實(shí)例來(lái)檢索有關(guān)進(jìn)程的診斷信息。
VisualVM可以很容易地實(shí)時(shí)診斷性能問(wèn)題。它提供了全套的分析工具,包括JConsole、jstack、jmap、jinfo和jstat等。此外,你還可以對JVM做一個(gè)快照,這樣以后在任何時(shí)都能審查。
網(wǎng)站:http://visualvm.java.net/
八、Groovy
Groovy是一種編程語(yǔ)言,通過(guò)添加新的關(guān)鍵字,自動(dòng)導入常用的類(lèi),以及可選類(lèi)型變量聲明,既簡(jiǎn)化又擴展了Java。
Groovy的核心優(yōu)勢之一是它的腳本功能。類(lèi)可以被編譯為Java字節碼或使用Groovy Shell動(dòng)態(tài)執行。Groovy的Java基礎使得它相較于Jython和JRuby更容易為Java開(kāi)發(fā)人員所接受。
【java程序員八大開(kāi)發(fā)工具】相關(guān)文章:
sun認證java程序員07-20
Java程序員必看的書(shū)籍06-25
java程序員面試題10-05
SUN認證JAVA程序員簡(jiǎn)介09-29
java程序員面試試題07-30
初級java程序員面試要求06-02
初級java程序員任職要求05-24