Java程序員開發(fā)常用的工具一

1、常用開發(fā)工具

作為一名Java程序開發(fā)人員,可以的選擇集成開發(fā)環(huán)境IDE(Integrated Development Environment)非常多,得益于Java是一門開源語(yǔ)言。有開源免費(fèi)的;有商用收費(fèi)的。如何選擇一款適合自己的集成開發(fā)環(huán)境,亦或說選擇一款符合自己項(xiàng)目開發(fā)需要的集成開發(fā)環(huán)境。如果選擇得當(dāng),那么就能夠使得開發(fā)工作事半功倍;否則事倍而功半。

免費(fèi)開源Eclipse

Eclipse最初是由IBM公司開發(fā)的替代商業(yè)軟件Visual Age for Java的下一代IDE開發(fā)環(huán)境,2001年11月貢獻(xiàn)給開源社區(qū),現(xiàn)在它由非營(yíng)利軟件供應(yīng)商聯(lián)盟Eclipse基金會(huì)(Eclipse Foundation)管理。Eclipse 是一個(gè)開放源代碼的、基于 Java 的可擴(kuò)展開發(fā)平臺(tái)。就其本身而言,它只是一個(gè)框架和一組服務(wù),用于通過插件組件構(gòu)建開發(fā)環(huán)境。幸運(yùn)的是Eclipse 附帶了一個(gè)標(biāo)準(zhǔn)的插件集,包括 Java 開發(fā)工具(Java Development Tools,JDT)。

Eclipse是著名的跨平臺(tái)的自由集成開發(fā)環(huán)境(IDE)。最初主要用來Java語(yǔ)言開發(fā),但是目前亦有人通過插件使其作為其他計(jì)算機(jī)語(yǔ)言比如C++、PHP、Python等語(yǔ)言的開發(fā)工具。Eclipse的本身只是一個(gè)框架平臺(tái),但是眾多插件的支持使得Eclipse擁有其他功能相對(duì)固定的IDE軟件很難具有的靈活性。許多軟件開發(fā)商以Eclipse為框架開發(fā)自己的IDE。

商用收費(fèi)MyEclipse(中國(guó),官網(wǎng))

MyEclipse是Eclipse的插件,也是一款功能強(qiáng)大的J2EE集成開發(fā)環(huán)境,由Genuitec公司發(fā)布,它是商用收費(fèi)的。

MyEclipse 是對(duì)Eclipse IDE的擴(kuò)展,利用它可以在數(shù)據(jù)庫(kù)和JavaEE的開發(fā)、發(fā)布以及應(yīng)用程序服務(wù)器的整合方面極大的提高工作效率。它是功能豐富的JavaEE集成開發(fā)環(huán)境,包括了完備的編碼、調(diào)試、測(cè)試和發(fā)布功能,完整支持HTML、Struts、JSP、CSS、Javascript、SQL,Hibernate,Spring。

Oracle公司免費(fèi)的NetBeans

NetBeans是Sun公司(2009年被甲骨文收購(gòu))在2000年創(chuàng)立的開放源代碼供開發(fā)人員和客戶社區(qū)的家園,旨在構(gòu)建世界級(jí)的Java IDE。

NetBeans當(dāng)前可以在Solaris、Windows、Linux和Macintosh OS X平臺(tái)上進(jìn)行開發(fā),并在SPL(Sun公用許可)范圍內(nèi)使用,是一個(gè)屢獲殊榮的集成開發(fā)環(huán)境。NetBeans包括開源的開發(fā)環(huán)境和應(yīng)用平臺(tái),NetBeans IDE可以使開發(fā)人員利用Java平臺(tái)能夠快速創(chuàng)建Web、企業(yè)、桌面以及移動(dòng)的應(yīng)用程序,NetBeans IDE目前支持PHP、Ruby、JavaScript、Ajax、Groovy、Grails和C /C + +等開發(fā)語(yǔ)言。

NetBeans項(xiàng)目由一個(gè)活躍的開發(fā)社區(qū)提供支持, NetBean開發(fā)環(huán)境提供了豐富的產(chǎn)品文檔和培訓(xùn)資源以及大量的第三方插件。

IntelliJ IDEA

IntelliJ IDEA是一款綜合的Java 編程環(huán)境,被許多開發(fā)人員和行業(yè)專家譽(yù)為市場(chǎng)上最好的IDE。它提供了一系列最實(shí)用的的工具組合:智能編碼輔助和自動(dòng)控制,支持J2EE,Ant,JUnit,SVN和Git集成,非平行的編碼檢查和創(chuàng)新的GUI設(shè)計(jì)器。IDEA把Java開發(fā)人員從一些耗時(shí)的常規(guī)工作中解放出來,顯著地提高了開發(fā)效率。具有運(yùn)行更快速,生成更好的代碼;持續(xù)的重新設(shè)計(jì)和日常編碼變得更加簡(jiǎn)易,與其它工具的完美集成;很高的性價(jià)比等特點(diǎn)。IntelliJ IDEA以前是收費(fèi)軟件,不過在2009年以后就開始推出了免費(fèi)的社區(qū)開源版本。不過商用還是需要收費(fèi)的。

Eclipse、MyEclipse、NetBeans和IntelliJ IDEA的特點(diǎn)和適用場(chǎng)景:

Eclipse、MyEclipse、NetBeans和IntelliJ IDEA這四個(gè)IDE有著不同的特性和優(yōu)點(diǎn),根據(jù)開發(fā)的不同可能需要選擇不同的IDE。在Java開發(fā)的每個(gè)方面,這四個(gè)IDE都能勝任工作,然而根據(jù)你所做的不同開發(fā)例如Swing開發(fā),web開發(fā)或者企業(yè)開發(fā),選擇IDE就有所偏向。

Swing開發(fā):

如果你專門從事Swing開發(fā),NetBeans無疑是最好的選擇,如果你沒有選擇NetBeans而是選擇了Eclipse,建議使用MyEclipse 和它的Matisse4Eclipse構(gòu)造器。IDEA由于對(duì)JGoodies Forms的支持,所以在開發(fā)Swing方面與前兩者相比并不占有優(yōu)勢(shì)。

JSP/Struts開發(fā):

開發(fā)JSP/Struts首選的是IDEA,接下來是MyEclipse,然后是NetBeans,由于缺少對(duì)內(nèi)建Struts的支持,Eclipse的基本版本沒有競(jìng)爭(zhēng)優(yōu)勢(shì)。

JSF開發(fā):

在開發(fā)JSF方面,這三個(gè)IDE可以說都是很好的選擇,但是IDEA可能會(huì)更好一點(diǎn),接下來是Eclipse/MyEclipse,最后是NetBeans。

企業(yè)開發(fā):

由于NetBeans對(duì)JPA的支持和它產(chǎn)生代碼的質(zhì)量以及對(duì)持久化單元合適的設(shè)置,所以在企業(yè)開發(fā)方面,NetBeans是首選,接下來是IDEA,由于Eclipse的Dali項(xiàng)目的限制,Eclipse可能是最后選擇的。如果放棄標(biāo)準(zhǔn)的JPA,從事Hibernate開發(fā),MyEclipse是最好的選擇。

除了上面提到的這四款由大公司開發(fā)的IDE外,JAVA開發(fā)的IDE還有很多,例如Spring基于eclipse推出的STS(Spring Tool Suite)、小而且快JCreator,但是以上最常用的eclipse和IntelliJ IDEA。國(guó)內(nèi)Java開發(fā)人員使用的最多也是eclipse和IntelliJ IDEA。筆者用的最多是eclipse及Spring基于eclipse推出的STS。如果在使用中遇到什么可以無時(shí)無刻咨詢。


2、常用接口測(cè)試工具

作為一名開發(fā)人員,完成開發(fā)工作后,單元測(cè)試及接口測(cè)試必不可少。單元測(cè)試不用說了,Java人員幾乎都是使用JUnit及JUnit相關(guān)的測(cè)試框架。對(duì)于接口測(cè)試呢?有什么工具可以使用呢?在說工具之前先來了解兩個(gè)問題。

什么是接口測(cè)試?

用來檢查各個(gè)組件的接口的測(cè)試,接口測(cè)試主要檢查外部系統(tǒng)與系統(tǒng)之間以及各個(gè)子系統(tǒng)之間的交互點(diǎn),測(cè)試的重點(diǎn)在數(shù)據(jù)的傳遞上。

為什么要做接口測(cè)試?

如果項(xiàng)目全部推行單元測(cè)試,時(shí)間上不允許,而接口測(cè)試是一種特殊的單元測(cè)試,覆蓋率沒有做到所謂的單元測(cè)試的百分之百,不過覆蓋了所有的面像用戶的功能點(diǎn),而且接口測(cè)試可以采用自動(dòng)化+持續(xù)集成的方式,節(jié)約時(shí)間了成本,同時(shí)提高了效率。

java第三方包httpclient

如果使用httpclient進(jìn)行接口測(cè)試,免不了開發(fā)人員還需要自己動(dòng)手去編寫代碼,這個(gè)不是首選方案。筆者也不推薦這個(gè)方案,增加了程序人員的工作強(qiáng)度。

Postman

Postman是一款功能非常棒的Chrome擴(kuò)展,提供功能強(qiáng)大的API&HTTP請(qǐng)求調(diào)試。它可以發(fā)送幾乎所有類型的HTTP請(qǐng)求,并可以附帶任何數(shù)量的參數(shù)和請(qǐng)求頭(headers)??梢哉fPostman滿足了HTTP接口測(cè)試的大部分功能,只有少部分的功能不被支持,比如:請(qǐng)求流程的控制;使得程序員可以在編寫一些單元測(cè)試中解脫出來。

Postman特點(diǎn):

支持用例管理

支持get、post、文件上傳、響應(yīng)驗(yàn)證、變量管理、環(huán)境參數(shù)管理等功能

支持批量運(yùn)行

支持用例導(dǎo)出、導(dǎo)入

支持云端保存用例【付費(fèi)用戶】

推薦文章

JMeter

Apache JMeter是Apache組織開發(fā)的壓力測(cè)試工具,也是目前應(yīng)用最廣泛的開源性能測(cè)試工具之一。它最初被設(shè)計(jì)用于Web應(yīng)用測(cè)試,后來擴(kuò)展到其他測(cè)試領(lǐng)域。像其他性能測(cè)試工具一樣,JMeter可以用于對(duì)服務(wù)器、網(wǎng)絡(luò)或?qū)ο竽M巨大的負(fù)載,來測(cè)試不同壓力類別下應(yīng)用系統(tǒng)的強(qiáng)度,分析應(yīng)用系統(tǒng)的整體性能。JMeter由100% JAVA開發(fā),開源,具備完全的可移植性;采用Swing界面和輕量組件支持包;支持插件擴(kuò)展,可以通過擴(kuò)展插件支持新的協(xié)議,監(jiān)控系統(tǒng)資源,展示更豐富的性能圖表等。企業(yè)能夠在JMeter的基礎(chǔ)上實(shí)現(xiàn)二次開發(fā),擴(kuò)展JMeter的功能為己所用。不過要記住Jmeter由JAVA開發(fā),安裝Jmeter之前需要先安裝JDK。Jmeter功能非常強(qiáng)大是筆者最喜歡的接口測(cè)試工具,沒有之一。

Postman和Jmeter特點(diǎn):

(1)測(cè)試用例組織形式

Jmeter和Postman的測(cè)試用例組織形式都比較扁平,Jmeter通過測(cè)試計(jì)劃(TestPlan)來組織測(cè)試用例;Postman主要通過集合(Collection)來組織測(cè)試用例。

(2)支持的接口類型與測(cè)試類型

從功能上Jmeter最為強(qiáng)大,可以測(cè)試各種類型的接口(包括Http、數(shù)據(jù)庫(kù)、webservice、ftp等),不支持的也可以通過網(wǎng)上或自己編寫的插件進(jìn)行擴(kuò)展;Postman是輕量級(jí)的,定位也不同,可用來測(cè)試http接口和Rest接口。

(3)流程控制

Jmeter支持Switch控制器、If控制器、隨機(jī)控制器等一系列控制器實(shí)現(xiàn)流程控制,以及Beanshell腳本;Postman則需要通過JavaScript腳本控制

(4)斷言

Jmeter中的TestPlan、Threads Group和Sampler均可添加斷言;Postman的HTTP請(qǐng)求的Tests中可添加斷言。

(5)腳本擴(kuò)展能力

Jmeter支持用java語(yǔ)言編寫的Bean shell;Postman支持使用JavaScript語(yǔ)言編寫的腳本

(6)團(tuán)隊(duì)協(xié)作

Jmeter的一個(gè)TestPlan就是一個(gè)jmx(xml)文件,無法分割,但是Jmeter有一個(gè)合并的功能,允許將多個(gè)文件合并在一起。只能每個(gè)團(tuán)隊(duì)成員自己建立一個(gè)TestPlan,分功能塊進(jìn)行測(cè)試,最后整理合并;Postman雖然有團(tuán)隊(duì)協(xié)作的功能,但是需要付費(fèi)。

Jmeter和Postman都還支持?jǐn)?shù)據(jù)參數(shù)化、自定義變量、顯示日志等功能。其中重點(diǎn)要說的是Jmeter還可以在無界面的Linux環(huán)境進(jìn)行壓力測(cè)試、性能測(cè)試;以便分析系統(tǒng)的瓶頸;Jmeter的功能覆蓋了Postman的所有功能,所以強(qiáng)烈推薦使用Jmeter。

小編分類整理了許多java進(jìn)階學(xué)習(xí)材料和BAT面試題,需要資料的請(qǐng)加QQ群:731611386就能領(lǐng)取2019年java進(jìn)階學(xué)習(xí)資料和BAT面試題以及《EffectiveJava》(第3版)電子版書籍。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 1、常用開發(fā)工具 2、常用接口測(cè)試工具 3、常用遠(yuǎn)程連接工具 4、一些其他常用工具 5、總結(jié) 1、常用開發(fā)工具 作...
    游戲原畫設(shè)計(jì)閱讀 922評(píng)論 0 1
  • 一、常用開發(fā)工具 作為一名 Java 程序開發(fā)人員,可選擇的集成開發(fā)環(huán)境 IDE(Integrated Devel...
    Java架構(gòu)學(xué)習(xí)者閱讀 389評(píng)論 0 0
  • 今天雨停住了腳步,帶著小女兒到了表嫂家玩,大姑說地里很多蘿卜,讓我拔點(diǎn)回去吃,表嫂就拿著竹筐帶我們到了菜地。 女兒...
    飛舞de葉閱讀 277評(píng)論 2 3
  • 了解人的關(guān)系組成,先要了解自己與自己相處的關(guān)系,外界的關(guān)系是內(nèi)在關(guān)系的投影。 研究自己與自己相處的關(guān)系,看似簡(jiǎn)單,...
    小城雨田閱讀 212評(píng)論 0 1
  • 前兩天跟朋友通電話,交談了很長(zhǎng)時(shí)間。聊到害怕,朋友說,我害怕有人會(huì)突然離開。我笑了笑,說,你怕現(xiàn)在在你身邊的...
    碧如意閱讀 246評(píng)論 0 0

友情鏈接更多精彩內(nèi)容