java程序開發(fā)必知的8款高效工具

Java開發(fā)者常常都會(huì)想辦法如何更快地編寫Java代碼董瞻,讓編程變得更加輕松。目前峻村,市面上涌現(xiàn)出越來越多的高效編程工具麸折。所以,以下總結(jié)了一系列工具列表粘昨,其中包含了大多數(shù)開發(fā)人員已經(jīng)使用垢啼、正在使用或?qū)硪欢〞?huì)用到的高效工具窜锯。

1、測試

JUnit是一個(gè)Java語言的單元測試框架芭析,用于編寫和運(yùn)行可重復(fù)的測試锚扎。它為測試預(yù)期結(jié)果提供斷言,為共享的常用測試數(shù)據(jù)提供測試裝置(test fixtures)馁启,以及運(yùn)行測試的測試者(test runners)驾孔。

TestNG是受到了JUnit的啟發(fā)開發(fā)而成,但同時(shí)還具有一些新功能惯疙,所以相對(duì)而言翠勉,TestNG更加強(qiáng)大也更便于使用,如注解(annotations)霉颠、靈活的測試配置对碌、數(shù)據(jù)驅(qū)動(dòng)的測試和參數(shù)支持,以及強(qiáng)大的執(zhí)行模型蒿偎。它涵蓋了單元測試朽们、功能、端到端诉位、集成測試华坦,支持各種工具和插件(Eclipse、IDEA不从、Maven等)惜姐。

Arquillian是一個(gè)Java和JVM的測試平臺(tái),主要側(cè)重于集成和功能測試椿息。它去掉了單元測試歹袁,重點(diǎn)關(guān)注真正實(shí)時(shí)環(huán)境下的程序代碼的相互作用。Arquillian為測試配備了容器生命周期管理和典型測試精選寝优。

2条舔、集成

Apache Maven是一個(gè)非常著名的軟件項(xiàng)目管理和綜合工具》Ψ基于項(xiàng)目對(duì)象模型(POM)的概念孟抗,它的信息中心管理著項(xiàng)目的構(gòu)建、報(bào)告和文檔钻心。Maven提供了一個(gè)統(tǒng)一的構(gòu)建系統(tǒng)凄硼、項(xiàng)目信息和最佳的開發(fā)實(shí)踐指導(dǎo),并且支持新功能的透明遷移捷沸。

Gradle是一個(gè)開源的自動(dòng)化構(gòu)建系統(tǒng)摊沉。Gradle可以自動(dòng)構(gòu)建、測試痒给、發(fā)布说墨、部署骏全,還有多種軟件包或其他類型項(xiàng)目,如生成靜態(tài)網(wǎng)站尼斧。Gradle結(jié)合了Ant的能力和靈活性姜贡,以及Maven的依賴管理和約定,形成了一種高效的構(gòu)建方式棺棵。

Apache Ant是一個(gè)開源的Apache項(xiàng)目鲁豪,經(jīng)Apache軟件許可發(fā)布。它由多種內(nèi)置任務(wù)而成律秃,允許開發(fā)者編寫爬橡、裝配、測試和運(yùn)行java應(yīng)用程序棒动。它的特點(diǎn)是高度靈活糙申,不會(huì)嚴(yán)格限制Java項(xiàng)目的編碼慣例或目錄布局。

3船惨、應(yīng)用服務(wù)器

Apache Tomcat是一個(gè)開源的Web服務(wù)器和Servlet容器柜裸,由Apache軟件基金會(huì)(ASF)開發(fā)。它實(shí)現(xiàn)了幾個(gè)JavaEE規(guī)范粱锐,包括Java Servlet疙挺、JavaServer Pages(JSP)、Java EL和WebSocket怜浅,提供了一個(gè)可以運(yùn)行Java代碼的HTTP Web服務(wù)器環(huán)境铐然。

GlassFish是由SunMicrosystems的Java EE平臺(tái)起步,現(xiàn)在由Oracle公司贊助的開源應(yīng)用服務(wù)器項(xiàng)目恶座。支持的版本叫做Oracle GlassFish應(yīng)用服務(wù)器搀暑。GlassFish是免費(fèi)軟件,經(jīng)兩個(gè)免費(fèi)的軟件許可證批準(zhǔn):通用開發(fā)與發(fā)布許可(CDDL)和GNU通用公共許可證(GPL)跨琳。

Oracle WebLogic服務(wù)器是一個(gè)Java EE應(yīng)用服務(wù)器自点,目前由Oracle公司開發(fā),用于構(gòu)建和部署企業(yè)應(yīng)用Java EE脉让,支持降低運(yùn)營成本桂敛、提高性能、增強(qiáng)可擴(kuò)展性和支持Oracle應(yīng)用組合等的新特性溅潜。

4术唬、質(zhì)量分析

SonarQube是一個(gè)開源的平臺(tái),現(xiàn)已成為代碼質(zhì)量管理系統(tǒng)的世界領(lǐng)先者伟恶,并且因代碼質(zhì)量的持續(xù)檢查為眾人所知碴开。除了Java外毅该,它還支持大多數(shù)的語言博秫,而且可以用作Android開發(fā)潦牛,它集成了大多數(shù)的持續(xù)集成工具。SonarQube會(huì)為重復(fù)代碼挡育、編碼標(biāo)準(zhǔn)巴碗、單元測試、代碼覆蓋即寒、復(fù)雜代碼橡淆、潛在錯(cuò)誤、注釋母赵、設(shè)計(jì)和架構(gòu)而產(chǎn)生報(bào)告逸爵。

FindBugs也是開源的工具,在LesserGNU Public license許可下發(fā)布凹嘲。它運(yùn)行在Java字節(jié)碼上而不是源代碼师倔,可以識(shí)別和確定潛在錯(cuò)誤的嚴(yán)重程度,如空指針引用周蹭、無限遞歸循環(huán)趋艘、Java庫和死鎖的錯(cuò)誤使用。同時(shí)凶朗,它還可以作為Eclipse瓷胧、NetBeans,IntelliJ IDEA的插件棚愤。

Checkstyle的是一個(gè)開發(fā)工具搓萧,可以幫助程序員堅(jiān)持按編碼標(biāo)準(zhǔn)來編寫Java代碼,會(huì)自動(dòng)啟動(dòng)Java代碼檢查宛畦。它的配置性很強(qiáng)矛绘,能支持幾乎任何的編碼標(biāo)準(zhǔn)。

5刃永、版本控制

Apache Subversion是眾所周知的SVN工具货矮,是一個(gè)軟件版本和版本控制系統(tǒng),在一個(gè)開源許可下發(fā)布斯够。目前囚玫,它是由一個(gè)Apache軟件基金會(huì)的項(xiàng)目開發(fā),也是全球性開發(fā)者和用戶社區(qū)的一部分读规。

Git是一個(gè)免費(fèi)開源的分布式版本控制系統(tǒng)抓督,能夠提高大小事務(wù)的速度和效率。相對(duì)于其他的配置管理工具束亏,Git的特色在于提供廉價(jià)的局部分支铃在、便利的暫存區(qū)和多個(gè)工作流。每個(gè)Git工作目錄是一個(gè)完整的版本庫,有完整歷史和完整版本的跟蹤能力定铜、獨(dú)立的網(wǎng)絡(luò)接入或中央服務(wù)器阳液。

6、Java應(yīng)用分析

在為分析Java應(yīng)用開發(fā)最創(chuàng)新的智能工具方面揣炕,YourKit Java分析器是技術(shù)的領(lǐng)頭羊帘皿。你可以在CPU和內(nèi)存分析上都使用YourKit解決方案,還可以以最大生產(chǎn)率和零開銷來分析大型應(yīng)用畸陡。同時(shí)鹰溜,Java分析器還有幾個(gè)剛提出的分析創(chuàng)新,為其在各大小型企業(yè)的專業(yè)Java開發(fā)者獲得了當(dāng)之無愧的人氣丁恭。

JProfiler是商業(yè)許可的Java分析工具曹动,對(duì)于分析性能瓶頸、內(nèi)存泄漏牲览、CPU負(fù)載和解決線程問題等方面非常有效仁期,它支持在同一臺(tái)機(jī)器或遠(yuǎn)程機(jī)器上進(jìn)行分析。用戶可以看到活躍的總字節(jié)竭恬、實(shí)例跛蛋、線程、類和垃圾回收器活動(dòng)的可視化表示痊硕。它可以作為一個(gè)獨(dú)立應(yīng)用使用赊级,也可以作為Eclipse軟件開發(fā)環(huán)境的插件。

7岔绸、代碼覆蓋工具

JaCoco是衡量和報(bào)告Java代碼覆蓋率的一個(gè)開源工具包理逊。它是由Eclipse公共許可協(xié)議許可,是目前唯一能支持Java 8的字節(jié)代碼覆蓋工具盒揉。

Clover是一個(gè)商業(yè)的代碼覆蓋工具晋被,它提供的指標(biāo)可以讓程序員更好地平衡編程和測試。它在IDE或你的持續(xù)集成系統(tǒng)下運(yùn)行刚盈,還包括能加快測試速度的測試優(yōu)化羡洛。

8、Bug跟蹤

JIRA是幫助團(tuán)隊(duì)規(guī)劃和構(gòu)建優(yōu)秀產(chǎn)品的跟蹤工具藕漱。成千上萬的團(tuán)隊(duì)選擇JIRA來捕捉和組織問題欲侮、分配工作、跟進(jìn)團(tuán)隊(duì)活動(dòng)肋联。它是付費(fèi)工具威蕉,但有一個(gè)7天的免費(fèi)試用期。

Trac是一個(gè)針對(duì)軟件開發(fā)項(xiàng)目開發(fā)的完善wiki和問題的跟蹤系統(tǒng)橄仍,以最簡潔的方式對(duì)Web軟件項(xiàng)目進(jìn)行管理韧涨。它還可以幫助開發(fā)人員編寫優(yōu)秀的軟件牍戚,提供了對(duì)Subversion和Git(或其他版本控制系統(tǒng))的接口,集成了wiki和便捷報(bào)告程序虑粥。Trac允許wiki在問題描述和提交信息中標(biāo)記如孝,還創(chuàng)建了bug、任務(wù)舀奶、變更暑竟、文件和頁面之間的鏈接和無縫引用斋射。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末育勺,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子罗岖,更是在濱河造成了極大的恐慌涧至,老刑警劉巖,帶你破解...
    沈念sama閱讀 207,113評(píng)論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件桑包,死亡現(xiàn)場離奇詭異南蓬,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)哑了,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,644評(píng)論 2 381
  • 文/潘曉璐 我一進(jìn)店門赘方,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人弱左,你說我怎么就攤上這事窄陡。” “怎么了拆火?”我有些...
    開封第一講書人閱讀 153,340評(píng)論 0 344
  • 文/不壞的土叔 我叫張陵跳夭,是天一觀的道長。 經(jīng)常有香客問我们镜,道長币叹,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 55,449評(píng)論 1 279
  • 正文 為了忘掉前任模狭,我火速辦了婚禮颈抚,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘嚼鹉。我一直安慰自己邪意,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 64,445評(píng)論 5 374
  • 文/花漫 我一把揭開白布反砌。 她就那樣靜靜地躺著雾鬼,像睡著了一般。 火紅的嫁衣襯著肌膚如雪宴树。 梳的紋絲不亂的頭發(fā)上策菜,一...
    開封第一講書人閱讀 49,166評(píng)論 1 284
  • 那天,我揣著相機(jī)與錄音,去河邊找鬼又憨。 笑死翠霍,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的蠢莺。 我是一名探鬼主播寒匙,決...
    沈念sama閱讀 38,442評(píng)論 3 401
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼躏将!你這毒婦竟也來了锄弱?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 37,105評(píng)論 0 261
  • 序言:老撾萬榮一對(duì)情侶失蹤祸憋,失蹤者是張志新(化名)和其女友劉穎会宪,沒想到半個(gè)月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體蚯窥,經(jīng)...
    沈念sama閱讀 43,601評(píng)論 1 300
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡掸鹅,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,066評(píng)論 2 325
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了拦赠。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片巍沙。...
    茶點(diǎn)故事閱讀 38,161評(píng)論 1 334
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖荷鼠,靈堂內(nèi)的尸體忽然破棺而出句携,到底是詐尸還是另有隱情,我是刑警寧澤颊咬,帶...
    沈念sama閱讀 33,792評(píng)論 4 323
  • 正文 年R本政府宣布务甥,位于F島的核電站,受9級(jí)特大地震影響喳篇,放射性物質(zhì)發(fā)生泄漏敞临。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,351評(píng)論 3 307
  • 文/蒙蒙 一麸澜、第九天 我趴在偏房一處隱蔽的房頂上張望挺尿。 院中可真熱鬧,春花似錦炊邦、人聲如沸编矾。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,352評(píng)論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽窄俏。三九已至,卻和暖如春碘菜,著一層夾襖步出監(jiān)牢的瞬間凹蜈,已是汗流浹背限寞。 一陣腳步聲響...
    開封第一講書人閱讀 31,584評(píng)論 1 261
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留仰坦,地道東北人履植。 一個(gè)月前我還...
    沈念sama閱讀 45,618評(píng)論 2 355
  • 正文 我出身青樓,卻偏偏與公主長得像悄晃,于是被迫代替她去往敵國和親玫霎。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 42,916評(píng)論 2 344

推薦閱讀更多精彩內(nèi)容

  • Android 自定義View的各種姿勢1 Activity的顯示之ViewRootImpl詳解 Activity...
    passiontim閱讀 171,527評(píng)論 25 707
  • Java 開發(fā)者常常都會(huì)想辦法如何更快地編寫 Java 代碼妈橄,讓編程變得更加輕松庶近。目前,市面上涌現(xiàn)出越來越多的高效...
    OneAPM_Official閱讀 1,672評(píng)論 1 49
  • 因?yàn)橐粋€(gè)而愛上一座城眷细,這句話好像在書里或者電影里才能看見拦盹,而今年四月的我對(duì)這句話有了次怦然心動(dòng)鹃祖。 遇...
    Black_柳丁閱讀 199評(píng)論 2 1
  • 配方:阿膠溪椎、黃酒、大棗恬口、核桃校读、黑芝麻、桂圓祖能、枸杞歉秫、蜂蜜。比例如下: 做法:1养铸、先將阿膠打成粉(藥店里可以打)雁芙;2、...
    糖果屋1968閱讀 506評(píng)論 0 1
  • 一直對(duì)各種小飾品情有獨(dú)鐘钞螟,沒有抵抗力兔甘,每次看到都愛不釋手,忍不住要買回來鳞滨,就算不戴放著看著也開心洞焙。除了喜歡買各種小...
    Nana_手作閱讀 743評(píng)論 2 7