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