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