這才是開(kāi)發(fā)者神器正確的打開(kāi)方式!
開(kāi)源項(xiàng)目、工具資源、技術(shù)文章等方面,每周五首發(fā)于 ,歡迎大家Star并收藏!
收集整理每周優(yōu)質(zhì)開(kāi)發(fā)者內(nèi)容,包括
如果你還把IntelliJ IDEA當(dāng)成文本編輯器一樣用解決寫(xiě)代碼、運(yùn)行這些簡(jiǎn)單的操作,那就太可惜了!
IntelliJ IDEA功能非常強(qiáng)大的IDE,開(kāi)箱即用,而且把開(kāi)發(fā)者日常能夠提高效率的點(diǎn)都囊括進(jìn)去了。
其實(shí),我覺(jué)得倒談不上相見(jiàn)恨晚的「技巧」,只是發(fā)掘那些原本我們不知道的操作,進(jìn)而轉(zhuǎn)化成自己的操作習(xí)慣,從而提升開(kāi)發(fā)效率。
我認(rèn)為要最大化發(fā)揮IDEA的效率和價(jià)值,可以從3個(gè)方面著手:
自帶配置
快捷鍵
插件
自帶配置指的是IDEA本身就有的,但是比較容易被忽略的。
快捷鍵基本都是IDEA內(nèi)置的功能,這些功能是針對(duì)大多數(shù)開(kāi)發(fā)者比較通用的,通過(guò)快捷鍵可以避免鼠標(biāo)點(diǎn)按過(guò)程中低效的問(wèn)題。
插件則是針對(duì)不同開(kāi)發(fā)者提供的一些個(gè)性化支撐,比如你喜歡Vim的鍵盤(pán)操作,那可以使用IdeaVim插件,如果你覺(jué)得在代碼之間的跳轉(zhuǎn)比較麻煩,可以使用AceJump插件。
下面,我就分別從這兩個(gè)方面給大家介紹一些如何更大程度的發(fā)揮IntelliJ IDEA的效率。
自帶配置
后綴補(bǔ)全
每當(dāng)你有一個(gè)現(xiàn)有的表達(dá)式時(shí),你可以在一個(gè)點(diǎn)后面附加一個(gè)特定的后綴,并使用Tab鍵來(lái)應(yīng)用它。IntelliJ IDEA接收表達(dá)式,并根據(jù)提供的后綴對(duì)其進(jìn)行轉(zhuǎn)換。
加入,你有一個(gè)字符串列表名為items,現(xiàn)在你需要遍歷它,按照常規(guī)操作,就應(yīng)該開(kāi)始敲擊鍵盤(pán)輸入for ...,寫(xiě)一大串循環(huán)遍歷語(yǔ)句。
如果通過(guò)后綴補(bǔ)全,你只需要輸入items.for,IDEA就會(huì)自動(dòng)識(shí)別for這個(gè)后綴自動(dòng)創(chuàng)建一個(gè)for-each表達(dá)式,如下圖所示:

是不是很有意思?接下來(lái)再試試try這個(gè)后綴后綴:

它會(huì)快速生成一個(gè)try-catch表達(dá)式,是不是很高效?
除了這兩個(gè)之外,還有很多后綴補(bǔ)全模板:
fori:通過(guò)索引進(jìn)行列表迭代
forr:用索引按相反的順序進(jìn)行迭代
switch:生成switch表達(dá)式
sout:使用System.out.println打印表達(dá)式
null:檢查表達(dá)式是否為空
notnull:檢查表達(dá)式是否為非空
通過(guò)一個(gè)簡(jiǎn)單的后綴,就可以補(bǔ)全一串表達(dá)式,效率也得到了很大的提升。
該功能最初在ReSharper中可用,然后作為IDEA的一個(gè)單獨(dú)插件,后來(lái)在13.1版本中作為核心功能被引入IDEA。
我在另一篇文章中詳細(xì)的介紹了后綴補(bǔ)全功能的用法,想要深入了解的同學(xué)可以看一下:
實(shí)時(shí)模板
首先,來(lái)看一個(gè),你怎么編寫(xiě)下面這個(gè)數(shù)函數(shù):
public static void main(String[] args) {
? ? ? ?
}
逐字逐句的敲擊鍵盤(pán)嗎?效率太低了!
4個(gè)字母就可以解決的事情,為啥要那么麻煩?
我們只需要在IDEA里輸入psvm然后按下Tab鍵就可以快速生成模板
這就是實(shí)施模板的功能。
除了這個(gè)之外,還有很多。
psfs:
public static final String
sout:
System.out.println();
它的用法和后綴補(bǔ)全有點(diǎn)相似,我們可以在設(shè)置Editor→Live Templates查看當(dāng)前支持的實(shí)時(shí)模板,也可以自定義實(shí)時(shí)模板。
快捷鍵
編碼
Ctrl+Space: 基本代碼補(bǔ)全
Ctrl+Shift+Enter: 補(bǔ)全當(dāng)前語(yǔ)句
Alt+Enter: 快速修復(fù)
Ctrl+Alt+L: 格式化代碼
Ctrl+B: 轉(zhuǎn)到聲明/用法
Ctrl+Shift+B: 轉(zhuǎn)到實(shí)現(xiàn)
Ctrl+U: 轉(zhuǎn)到超級(jí)方法
Alt+Insert: 生成代碼
F2: 下一個(gè)高亮顯示的錯(cuò)誤
Ctrl+Alt+V/F/C/P: 提取變量/字段/常量/參數(shù)
Ctrl+Alt+N: 內(nèi)聯(lián)
Ctrl+F12: 文件結(jié)構(gòu)(例如:方法列表)
導(dǎo)航
Ctrl+N: 轉(zhuǎn)到類(lèi)
Ctrl+Shift+N: 轉(zhuǎn)到文件
Shift+Shift: 搜索所有內(nèi)容
Alt+1: 項(xiàng)目視圖
Alt+F1+Enter:跳轉(zhuǎn)到項(xiàng)目視圖中的文件
Ctrl+Shift+F: 在文件中查找
Alt+Left/Right: 切換打開(kāi)的文件
運(yùn)行
Ctrl+Shift+F10: 運(yùn)行當(dāng)前環(huán)境
Shift+F10: 運(yùn)行
Shift+F9: 調(diào)試
F7/F8/F9: (調(diào)試模式)進(jìn)入/跳過(guò)/恢復(fù)程序
插件
1. Codota
Codota根據(jù)數(shù)以百萬(wàn)計(jì)的開(kāi)源Java程序和你的上下文補(bǔ)全代碼行,幫助你更快地編碼,減少錯(cuò)誤。
它提供代碼自動(dòng)補(bǔ)全,內(nèi)聯(lián)和相關(guān)的代碼示例,以及基于你自己的編碼情況的代碼建議。

2. Rainbow Brackets
Rainbow Brackets可以提供醒目、好看的括號(hào),能夠幫助我們更高效的匹配代碼中成對(duì)的括號(hào)。

3. Statistic
Statistic插件顯示項(xiàng)目統(tǒng)計(jì)數(shù)據(jù),這個(gè)插件顯示按擴(kuò)展名排序的文件以及大小、行數(shù)等。

4. AceJump
AceJump允許你快速將光標(biāo)導(dǎo)航到編輯器中可見(jiàn)的任何位置。
你只需要簡(jiǎn)單地按下ctrl+;,輸入一個(gè)字符,然后輸入匹配的字符給AceJump。

5. CamelCase
使用這個(gè)插件,你可以在CamelCase、camelCase、snake_case和SNAKE_CASE這些不同格式的命名之間輕松切換。

6. Presentation Assistant
這個(gè)插件顯示你調(diào)用任何行動(dòng)的名稱(chēng)和對(duì)應(yīng)的Win/Mac快捷方式,能夠在你操作的過(guò)程中教會(huì)你如何使用快捷鍵。

7. Code Iris
這個(gè)插件將你的項(xiàng)目中的模塊、包和類(lèi)可視化。它就像一個(gè)基于UML的地圖,可以用于你的源代碼。

8. QAPlug
QAPlug是一個(gè)用于管理代碼質(zhì)量的Intellij IDEA插件,它集成了PMD、Checkstyle和Findbugs等工具。

9. SmarterEditor
這個(gè)插件使你在使用IntelliJ時(shí)更有效率,它可以將經(jīng)常使用的操作映射到一個(gè)快捷方式上,以此提升效率。

10. Grazie
這個(gè)插件為你在IDE中寫(xiě)的文本提供智能拼寫(xiě)和語(yǔ)法檢查。

建議大家有空可以多瀏覽Github,有很多好用的開(kāi)源免費(fèi)工具。但是,目前Github上項(xiàng)目多如牛毛,而且刷榜現(xiàn)在也非常嚴(yán)重,想要找到優(yōu)質(zhì)的項(xiàng)目變得越來(lái)越難。這里,給大家推薦Github上一個(gè)非常不錯(cuò)的項(xiàng)目《DevWeekly開(kāi)源工具、優(yōu)秀的技術(shù)文章,喜歡的同學(xué)可以Star并收藏一下,每周五會(huì)定期更新: