IDEA全稱(cheng)IntelliJ IDEA,是java編程語言(yan)開(kai)發(fa)的集成(cheng)環(huan)境。IntelliJ在業界被公(gong)(gong)認為最好(hao)的java開(kai)發(fa)工(gong)具(ju),尤其在智能代碼(ma)(ma)助手(shou)、代碼(ma)(ma)自(zi)動提示、重構、JavaEE支持、各類版本(ben)工(gong)具(ju)(git、svn等)、JUnit、CVS整合、代碼(ma)(ma)分析、新的GUI設計等方面的功能可以(yi)說是超常(chang)的。IDEA是JetBrains公(gong)(gong)司(si)(si)的產品(pin),這家公(gong)(gong)司(si)(si)總部位于捷克共和(he)國的首(shou)都布拉格,開(kai)發(fa)人(ren)員以(yi)嚴謹著稱(cheng)的東(dong)歐程序員為主(zhu)。它的旗(qi)艦版本(ben)還支持HTML,CSS,PHP,MySQL,Python等。免費版只支持Java,Kotlin等少數語言(yan)。
最突出的功能自然是調試(Debug),可以對Java代碼,JavaScript,JQuery,Ajax等技術進行調試。比如(ru)查看Map類(lei)型的對象,如(ru)果實(shi)現類(lei)采(cai)用的是(shi)哈希(xi)映射(she),則會自(zi)動過(guo)濾空的Entry實(shi)例(li)。
其次(ci),需要動態Evaluate一(yi)個(ge)(ge)表達式的(de)值,比如(ru)我得(de)到了一(yi)個(ge)(ge)類的(de)實例,但是(shi)并不知(zhi)曉它的(de)API,可以通過Code Completion點出它所支持的(de)方法。
最后(hou),在多線程調試(shi)的(de)(de)情(qing)況下,Log on console的(de)(de)功能(neng)可以幫(bang)你檢查多線程執行的(de)(de)情(qing)況。
IDEA所提倡的(de)是智能編碼,是減少程(cheng)序員的(de)工作,IDEA的(de)特色功能有以下22點:
在(zai)很多時候我(wo)們要選(xuan)取(qu)某(mou)個方(fang)法,或某(mou)個循環或想一(yi)步一(yi)步從一(yi)個變(bian)量到整個類慢(man)慢(man)擴充(chong)著選(xuan)取(qu),IDEA就提供(gong)這種(zhong)基于語法的(de)選(xuan)擇(ze),在(zai)默認設置中Ctrl+W,可(ke)以實現(xian)選(xuan)取(qu)范圍的(de)不(bu)斷(duan)擴充(chong),這種(zhong)方(fang)式在(zai)重構的(de)時候尤(you)其顯得(de)方(fang)便。
IDEA提供了豐富(fu)的(de)導航查(cha)(cha)看模式,例如Ctrl+E顯(xian)示(shi)最近打開過的(de)文件(jian),Ctrl+N顯(xian)示(shi)你希(xi)望顯(xian)示(shi)的(de)類名(ming)查(cha)(cha)找框(kuang)(該框(kuang)同樣有智能(neng)補充功(gong)能(neng),當你輸入字母后IDEA將(jiang)顯(xian)示(shi)所有候選類名(ming))。在最基(ji)本的(de)project視圖中,你還可以(yi)選擇多(duo)種的(de)視圖方式。
不用(yong)通(tong)過版本管(guan)理服(fu)務器,單純的IDEA就可以(yi)查看任何工程中文件(jian)的歷史(shi)記錄,在版本恢復時你可以(yi)很容易的將其(qi)恢復。
IDEA是所有IDE中(zhong)早(zao)支持重(zhong)構(gou)的(de),其優秀的(de)重(zhong)構(gou)能力一直是其主要賣(mai)點之(zhi)一。
Java規(gui)范中提倡的toString()、hashCode()、equals()以及所有的get/set方(fang)法,你可以不(bu)用進行任(ren)何的輸入就可以實現代(dai)碼的自動生成,從而(er)把(ba)你從無聊(liao)的基本(ben)方(fang)法編碼中解放出來。
基(ji)本所有(you)(you)(you)的(de)IDE都有(you)(you)(you)重排版(ban)功(gong)能,但僅有(you)(you)(you)IDEA的(de)是人性(xing)的(de),因為它(ta)支持排版(ban)模式(shi)的(de)定制,你可以根(gen)據不(bu)同(tong)的(de)項目(mu)要求采用(yong)不(bu)同(tong)的(de)排版(ban)方(fang)式(shi)。
xml全提示支(zhi)持(chi)(chi):所有流(liu)行框架的xml文件都支(zhi)持(chi)(chi)全提示,誰(shui)用誰(shui)知道。
任何不符合(he)java規(gui)范、自己預定義的規(gui)范、累(lei)贅(zhui)都將在頁面(mian)中加亮顯示。
對代碼(ma)進行自(zi)動分析,檢測不(bu)符合規范(fan)的,存(cun)在風險(xian)的代碼(ma),并加亮(liang)顯(xian)示。
不需要任何的插件(jian),完(wan)全(quan)支持JSP。
代碼輸(shu)入過程中(zhong),自動補充方法或類(lei)。
不需要任何插件完全(quan)支(zhi)持EJB(6.0 支(zhi)持EJB3.0)
用過UtralEdit的肯定對其的列(lie)編輯模式(shi)贊賞不已,因為它減少(shao)了很多(duo)無聊的重復(fu)工作(zuo),而IDEA完全支持該模式(shi),從而更加提高(gao)了編碼效率。
預置模板(ban)可以(yi)讓(rang)你(ni)把(ba)經常用到的(de)方法編輯進模板(ban),使(shi)用時你(ni)只用輸入(ru)(ru)簡單的(de)幾個字母就可以(yi)完成全部代碼(ma)的(de)編寫。例如使(shi)用比較高的(de)public static void main(String[] args){}你(ni)可以(yi)在模板(ban)中預設pm為該方法,輸入(ru)(ru)時你(ni)只要輸入(ru)(ru)pm再按代碼(ma)輔助鍵,IDEA將(jiang)完成代碼(ma)的(de)自動(dong)輸入(ru)(ru)。
智能檢查(cha)類(lei)中的方法(fa),當發現方法(fa)名只(zhi)有一(yi)個時自動(dong)完(wan)成(cheng)代碼輸入,從而減(jian)少(shao)剩(sheng)下代碼的編寫(xie)工作(zuo)。
集成(cheng)了市面上常見的所有版(ban)本控(kong)(kong)制(zhi)工具插件(jian),包括(kuo)git、svn、github,讓(rang)開(kai)發人員在編程的工程中(zhong)直接在intellij idea里就能(neng)完(wan)成(cheng)代碼的提交、檢出、解決沖突(tu)、查(cha)看版(ban)本控(kong)(kong)制(zhi)服務器內容(rong)等等。
自動檢查(cha)代碼中不使用的(de)代碼,并給出提示,從而使代碼更高效。
自動(dong)檢查代(dai)碼,發現(xian)與(yu)預置(zhi)規(gui)范有出(chu)入的(de)代(dai)碼給出(chu)提(ti)示,若(ruo)程(cheng)(cheng)序員同意修改(gai)自動(dong)完成修改(gai)。例如代(dai)碼:String str = "Hello Intellij " + "IDEA";IDEA將(jiang)(jiang)給出(chu)優化(hua)提(ti)示,若(ruo)程(cheng)(cheng)序員同意修改(gai)IDEA將(jiang)(jiang)自動(dong)將(jiang)(jiang)代(dai)碼修改(gai)為(wei):String str=HelloIntellij IDEA";
查找和替換支持(chi)正則表達(da)式,從而提(ti)高效(xiao)率(lv)。
支持(chi)JavaDoc的(de)(de)預覽(lan)功(gong)能,在JavaDoc代碼(ma)中Ctrl+Q顯示JavaDoc的(de)(de)結果,從而提高(gao)doc文檔的(de)(de)質量。
程序員編(bian)碼時IDEA時時檢測你(ni)的(de)意圖,或提(ti)供(gong)建議(yi),或直接幫你(ni)完成代碼。