12個(gè)提高Java程序員工作效率的工具
Java開(kāi)發(fā)者常常都會(huì)想辦法如何更快地編寫Java代碼,讓開(kāi)發(fā)過(guò)程變得更加輕松,更加高效。目前,市面上涌現(xiàn)出越來(lái)越多的高效編程工具。團(tuán)長(zhǎng)總結(jié)了幾個(gè)常用的工具,其中包含了大多數(shù)開(kāi)發(fā)人員已經(jīng)使用、正在使用或?qū)?lái)一定會(huì)用到的高效工具。
1、Eclipse
Eclipse是最有名也最廣泛使用的Java集成開(kāi)發(fā)環(huán)境(IDE),允許開(kāi)發(fā)者結(jié)合語(yǔ)言支持和其他功能到任何的默認(rèn)包中,而且Eclipse市場(chǎng)有許多定制和擴(kuò)展的插件。
網(wǎng)址:https://www.eclipse.org/
2、IntelliJ
IntelliJ已經(jīng)引起了開(kāi)發(fā)者的“追捧”,甚至比Eclipse還受寵,有免費(fèi)版和專業(yè)版。IntelliJ為眾多Java EE框架提供了針對(duì)框架的編碼幫助和提升生產(chǎn)效率的功能,還有大多數(shù)應(yīng)用服務(wù)器的部署工具。
網(wǎng)址:https://www.jetbrains.com/idea/
3、JProfiler
JProfiler是商業(yè)許可的Java分析工具,是針對(duì)Java EE和Java SE應(yīng)用程序開(kāi)發(fā)的。它允許兩個(gè)內(nèi)存剖面評(píng)估內(nèi)存使用情況和動(dòng)態(tài)分配泄漏和CPU剖析,以評(píng)估線程沖突。JProfiler直覺(jué)式的GUI讓你可以找到性能瓶頸、抓出內(nèi)存漏失(memory leaks)、并解決執(zhí)行緒的問(wèn)題。它既可以作為一個(gè)獨(dú)立的應(yīng)用來(lái)使用,也可以作為Eclipse軟件開(kāi)發(fā)環(huán)境的插件。
網(wǎng)址:https://www.ej-technologies.com/products/jprofiler/overview.html
4、Clover
它能幫助測(cè)試優(yōu)化,進(jìn)一步優(yōu)化代碼。它提供的指標(biāo)可以讓程序員更好地平衡編程和測(cè)試,它可以在IDE或你的持續(xù)集成系統(tǒng)下運(yùn)行??傊?,Clover是一個(gè)很棒的工具。
網(wǎng)址:https://www.atlassian.com/software/clover
5、Javadoc
Javadoc是Oracle公司用來(lái)從Java源代碼中生成HTML格式API文檔的生成工具。IDE可以自動(dòng)生成HTML代碼。許多文件編輯器幫助用戶生成Javadoc源,并將 Javadoc 信息當(dāng)作程序員的內(nèi)部參考。Javadoc也提供了用于創(chuàng)建doclets和taglets的API,讓你能夠進(jìn)一步分析 Java 應(yīng)用的結(jié)構(gòu)。
網(wǎng)址:http://www.oracle.com/technetwork/java/javase/documentation/index-jsp-135444.html
6、FindBugs
Findbugs是一個(gè)Java代碼靜態(tài)分析工具,可以識(shí)別和確定潛在錯(cuò)誤的嚴(yán)重程度,如空指針引用、無(wú)限遞歸循環(huán)、Java庫(kù)和死鎖的錯(cuò)誤使用,盡可能在項(xiàng)目的初始階段就將代碼問(wèn)題解決。它可以使用GUI界面,也可以作為NetBeans,Eclipse、IntelliJ IDEA的插件來(lái)使用。
網(wǎng)址:http://findbugs.sourceforge.net/
7、JUnit
JUnit是Java單元測(cè)試的必備工具,用于編寫和運(yùn)行可重復(fù)的測(cè)試。提供斷言測(cè)試預(yù)期結(jié)果,JUnit測(cè)試讓您可以更快地編寫代碼,提高質(zhì)量。JUnit測(cè)試可以自動(dòng)運(yùn)行,檢查自己的結(jié)果,并提供即時(shí)反饋,沒(méi)有必要通過(guò)測(cè)試結(jié)果報(bào)告來(lái)手動(dòng)梳理。JUnit可廣泛用于工業(yè)和作為支架(從命令行)或IDE(如Eclipse)內(nèi)單獨(dú)的Java程序。
網(wǎng)址:https://junit.org/junit5/
8、Git
Git是一個(gè)開(kāi)源的分布式版本控制系統(tǒng),可以有效、高速的處理從很小到非常大的項(xiàng)目版本管理。能夠提高大小事務(wù)的速度和效率。與其他的配置管理工具相比較的話,Git的特色在于提供廉價(jià)的局部分支、便利的暫存區(qū)和多個(gè)工作流。
網(wǎng)址:https://git-scm.com/
9、WildFly
WildFly是一個(gè)由Jboss開(kāi)發(fā)的應(yīng)用服務(wù)器,現(xiàn)在由紅帽在開(kāi)發(fā)維護(hù)。它是用Java編寫的,并且實(shí)現(xiàn)了Java平臺(tái)和企業(yè)版(Java EE)規(guī)范。它具有無(wú)與倫比的速度,具有功能強(qiáng)大的管理能力,還支持最新的標(biāo)準(zhǔn)和技術(shù),并且可以在多個(gè)平臺(tái)上運(yùn)行。
網(wǎng)址:http://wildfly.org/
10、Hudson
Hudson是一個(gè)用Java編寫的持續(xù)集成(CI)工具,在應(yīng)用服務(wù)器上運(yùn)行,它的安裝和配置都很簡(jiǎn)單。它能夠跟蹤哪次構(gòu)建生成哪些jar,哪次構(gòu)建使用哪個(gè)版本的jar等。它可以通過(guò)插件進(jìn)行擴(kuò)展,你可以開(kāi)發(fā)適合自己團(tuán)隊(duì)使用的工具。
網(wǎng)址:http://hudson-ci.org/
11、Maven
Maven是一個(gè)采用純Java編寫的開(kāi)源項(xiàng)目管理工具。它包含了一組標(biāo)準(zhǔn)集合,一個(gè)項(xiàng)目生命周期(Project Lifecycle),一個(gè)依賴管理系統(tǒng)(Dependency Management System),和用來(lái)運(yùn)行定義在生命周期階段(phase)中插件(plugin)目標(biāo)(goal)的邏輯。Maven采用了一種被稱之為project object model (POM)概念來(lái)管理項(xiàng)目,所有的項(xiàng)目配置信息都被定義在一個(gè)叫做POM.xml的文件中,通過(guò)該文件,Maven可以管理項(xiàng)目的整個(gè)生命周期,包括編譯,構(gòu)建,測(cè)試,發(fā)布,報(bào)告等等。
網(wǎng)址:http://maven.apache.org/download.cgi
12、Librato
Librato 是一個(gè)托管服務(wù),用來(lái)控制和監(jiān)測(cè)云應(yīng)用程序。用戶無(wú)需安裝或部署任何軟件即可創(chuàng)建自定義dashboard,并且非常流暢。純語(yǔ)言綁定使用Clojure、Java等語(yǔ)言。支持集成AWS、Heroku等眾多云平臺(tái)來(lái)進(jìn)行數(shù)據(jù)收集。當(dāng)監(jiān)控的指標(biāo)超過(guò)了定義的閾值,會(huì)自動(dòng)生成報(bào)警通知。Librato幾乎可以表現(xiàn)任何東西,并且把數(shù)據(jù)變得有意義。
網(wǎng)址:https://www.librato.com/