你好,歡迎進(jìn)入江蘇優(yōu)軟數(shù)字科技有限公司官網(wǎng)!
發(fā)布時間:2023-07-19
瀏覽次數(shù):0
是一家偉大的公司,仍然致力于為開發(fā)人員開發(fā)世界上最好的 IDE
前段時間,公司發(fā)布了最新版本的Java集成開發(fā)環(huán)境IDEA 2018.3Beta。 在這篇文章中,我將根據(jù)官方博客以及我自己的理解來分析一下本次更新的重要功能。
1. 構(gòu)建類、文件、符號、搜索
IDEA(以下簡稱IDEA)中的搜索可以分為以下幾類
類搜索,如Java、Scala等類文件
文件搜索,除類文件之外的所有文件
符號搜索,包括套接字名、類名、函數(shù)名、成員變量等。
搜索找到您的操作
字符串搜索和替換
在IDEA的世界里,搜索無處不在,你幾乎可以立即找到任何一行代碼甚至任何你想找的單詞。 在新版本中,IDEA 無縫集成了類、文件、符號、搜索和雙移鍵。
在舊版本中,類、文件、符號、搜索是獨立的快捷鍵。 新版本中,觸發(fā)任意類型的搜索行為,都會彈出如下窗口
從上面的演示可以看出,我們調(diào)出搜索類的窗口,首先會根據(jù)類名顯示搜索結(jié)果。 如果你想重復(fù)使用當(dāng)前輸入的字符來根據(jù)其他語義(例如文件或符號)進(jìn)行搜索,只需按 Tab 鍵,結(jié)果就會立即下來。
2.重新設(shè)計的結(jié)構(gòu)搜索/替換對話框
當(dāng)然,IDEA上不僅有上述五種搜索,還有一種特別強大的搜索,叫做結(jié)構(gòu)化搜索。 你可以根據(jù)一定的代碼結(jié)構(gòu)來搜索你需要的結(jié)果。
舉個栗子:如果我們要搜索所有語句塊,調(diào)出結(jié)構(gòu)化搜索框后,我們可以輸入以下文本
try {
?$TryStatement$;
} catch($ExceptionType$ $Exception$) {
?$CatchStatement$;
}
之后IDEA會搜索所有語句塊,新版本增強了這個功能。 下面我用兩個動畫來演示一下本次更新的兩個功能。
由于結(jié)構(gòu)化搜索的輸入文本比較長,我們通常會自己預(yù)設(shè)一些模板intellij idea替換所有文本,然后給模板命名。 之后,在進(jìn)行結(jié)構(gòu)化搜索時,我們就可以直接根據(jù)這個模板名稱進(jìn)行搜索。 新版本第一次更新第一個功能是,在文本輸入框中,按智能補全按鈕快速調(diào)出模板,按照最近搜索記錄排序,然后按回車鍵,文本將手動填寫對于您來說,您還可以點擊左上角的搜索圖標(biāo),也會顯示您最近的搜索記錄,這些記錄以文本形式顯示。
里面的文字是本系統(tǒng)的外部結(jié)構(gòu)化模板。 點擊Find按鈕后,所有的都會顯示出來,我們可以進(jìn)一步過濾它們。 比如我們想查出catch的名字是flash,給 對應(yīng)的模板變量加上一個Text類型就可以快速定位到。
3. 運行一切
你可以雙擊ctrl鍵調(diào)出窗口,你可以輸入一些東西來運行任何可以運行的東西,比如啟動容器、單元測試,甚至運行終端命令、maven構(gòu)建命令。
另外,你還可以按住shift鍵,這樣所有支持調(diào)試的操作都會在幾秒鐘內(nèi)變?yōu)檎{(diào)試模式。
4. 搭建插件中心
IDEA中很多強大的功能都是通過插件實現(xiàn)的。 舉個栗子,安裝一個語言插件。 IDEA改造為IDE、、IDE、、goIDE。 我已經(jīng)安裝了 30 多個特別有用的插件。
在新版本的IDEA中,插件中心全面改版,如右圖:
調(diào)出插件配置后,頁面分為三部分
:插件市場,可以搜索你想要的插件
:當(dāng)前安裝的所有插件,也可以點擊左上角的搜索圖標(biāo)按類別查看當(dāng)前安裝的插件,選項是自行下載安裝插件
:如果當(dāng)前安裝的插件有更新,則會在這里顯示
最后一項是配置項,可以自定義你的插件倉庫,可以配置插件下載的http代理(特別是美國網(wǎng)絡(luò)訪問較差的時候),也可以從本地硬盤
5、不斷完善版本控制系統(tǒng)
我個人不太喜歡使用圖形界面進(jìn)行版本控制,而IDEA對于版本控制的設(shè)計確實好用,所以我只能陷入其中,呵呵~
新版本中增加了對 Pull 的支持,現(xiàn)在您可以直接在筆記本中創(chuàng)建或查看項目的 Pull。
你也可以直接基于一個Pull創(chuàng)建分支,或者直接在網(wǎng)站上查看當(dāng)前的Pull。 這個功能對于開源工作者來說是一件非常幸福的事情。
據(jù)悉,新的IDEA對Git子模塊的支持也變得更加友好。 如果您的 Git 項目包含 Git 子模塊,那么當(dāng)您克隆代碼時,它也會被克隆到本地。 另外,如果項目中的任何文件發(fā)生更改并提交,IDEA也會智能匹配內(nèi)部模塊或子模塊,并一起提交,從而同時推送到多個倉庫。
有時候我們不經(jīng)意間降級了自己或者別人寫的代碼,這就導(dǎo)致我們每次提交代碼的時候,雖然只更新了一兩段代碼,但最終的 diff 就會變得混亂,但其中大部分的混亂都是由空格造成的。
在新版本的IDEA中,我們在比較文件時可以選擇忽略空格
注意:此選項默認(rèn)啟用
另外,合并代碼時,還可以選擇忽略空格
這樣,在解決沖突時,你就不會聽到與空間相關(guān)的變化,節(jié)省了大量寶貴的注意力。
6.新主題
IDEA終于在這個版本中添加了一個默認(rèn)主題,這是一個高對比度的主題,應(yīng)該很多人都會喜歡。
預(yù)計不久的將來IDEA會在該主題上下功夫,雖然筆者認(rèn)為的主題還是蠻不錯的,IDEA可以吸收。
7. 編輯器改進(jìn)
在IDEA中,只要在注釋中添加todo關(guān)鍵字,就可以在側(cè)邊欄的todo選項卡中看到當(dāng)前所有未完成的功能,如右圖所示。
在舊版本中,不支持多行todo注釋的顯示,但在新版本中,如果todo注釋有多行,只需要在以下行后面添加一個空格即可
IDEA現(xiàn)在可以在狀態(tài)欄中顯示當(dāng)前文件的縮進(jìn)有多少個空格。 您可以單擊該狀態(tài)欄來控制當(dāng)前文件的縮進(jìn)樣式。
比如你的項目的縮進(jìn)樣式是4個空格,然后一個新人寫了一個tab樣式的源文件并提交,你可以直接點擊彈出菜單中的ava...,然后進(jìn)行一些修改。
現(xiàn)在可以使用Tab+數(shù)字快速切換到你想要的文件,比鍵盤點擊更快
在新版本的IDEA中,不僅可以搜索字符串,還可以搜索整個段落
8.JVM調(diào)試器
IDEA的debug功能對于調(diào)試、查找錯誤或者閱讀源碼都起到了極其重要的作用。 新版本的IDEA進(jìn)一步加強了調(diào)試功能。 現(xiàn)在它不僅可以調(diào)試當(dāng)前應(yīng)用程序,還可以訪問任何Java進(jìn)程。 然后,您可以看到進(jìn)程的線程狀態(tài),并使用強大的View功能查看當(dāng)前顯存的狀態(tài)。
IDEA支持遠(yuǎn)程調(diào)試和本地調(diào)試幾乎一樣,只是需要打開遠(yuǎn)程端口。
IDEA還支持異步線程的調(diào)試。 當(dāng)在某一行設(shè)置斷點時,不僅可以看到該行對應(yīng)線程的調(diào)用堆棧,還可以看到啟動對應(yīng)線程的外部線程的調(diào)用堆棧。
新版本中,遠(yuǎn)程調(diào)試還增加了對異步堆棧的支持,可以使用以下兩個步驟
將 /lib/rt/-agent.jar 復(fù)制到遠(yuǎn)程計算機
遠(yuǎn)程機器添加啟動參數(shù)-:-agent.jar
9. 運行配置
當(dāng)我們運行應(yīng)用程序時,有時需要設(shè)置不同的啟動參數(shù)來檢查不同的療效。 以前這些參數(shù)需要你自動輸入,而且經(jīng)常忘記當(dāng)前啟動參數(shù)的測試目的,非常麻煩。
現(xiàn)在,您可以通過宏方法預(yù)先輸入?yún)?shù)。 調(diào)試時,通過調(diào)整宏,無需反復(fù)更改啟動參數(shù)文本。 通過宏文本,也可以一目了然地看出當(dāng)前啟動參數(shù)的測試目的是什么。
有時需要在控制臺輸入一些文本,然后運行程序,這對于調(diào)試來說非常不方便。 新版本的IDEA支持指定文本文件作為控制臺輸入,這樣就可以預(yù)先定義控制臺輸入intellij idea替換所有文本,重復(fù)借助
10. JVM
最后一個重要的功能應(yīng)該說是本次更新的最大亮點。 IDEA現(xiàn)在可以對Java程序進(jìn)行性能分析,包括以下幾個方面
火焰圖分析CPU性能消耗。 可以分析Java進(jìn)程中所有線程的CPU消耗火焰圖,也可以只選擇一個線程進(jìn)行分析
方法調(diào)用圖,可以找到某個線程中消耗CPU最多的方法
在方法列表中可以看到每個方法的調(diào)用次數(shù),點擊進(jìn)去還可以看到詳細(xì)的調(diào)用堆棧
我們用一個章節(jié)動畫來展示一下,具體細(xì)節(jié)讀者可以自行探索。
有了這個利器,你可以直接在IDEA上完成應(yīng)用程序的性能分析,無需額外的工具。 預(yù)計在不久的將來,MAT相關(guān)的功能也可能會移植到IDEA中。 屆時,Java應(yīng)用程序性能分析、堆分析、gc分析都將能夠在IDEA上運行。 真正的時代正式到來!
11.更多...
另外,本次更新還有大量小功能更新,這些都會在您使用新版本IDEA時體驗到。
如有侵權(quán)請聯(lián)系刪除!
Copyright ? 2023 江蘇優(yōu)軟數(shù)字科技有限公司 All Rights Reserved.正版sublime text、Codejock、IntelliJ IDEA、sketch、Mestrenova、DNAstar服務(wù)提供商
13262879759
微信二維碼