DevWeekly收集整理每周優(yōu)質(zhì)開發(fā)者內(nèi)容,包括開源項目、工具資源、技術(shù)文章等方面,每周五首發(fā)于DevWeekly(https://github.com/Jackpopc/DevWeekly),歡迎大家Star并收藏!
如果你還把IntelliJ IDEA當(dāng)成文本編輯器一樣用解決寫代碼、運行這些簡單的操作,那就太可惜了!
IntelliJ IDEA功能非常強大的IDE,開箱即用,而且把開發(fā)者日常能夠提高效率的點都囊括進去了。
其實,我覺得倒談不上相見恨晚的「技巧」,只是發(fā)掘那些原本我們不知道的操作,進而轉(zhuǎn)化成自己的操作習(xí)慣,從而提升開發(fā)效率。
我認為要最大化發(fā)揮IDEA的效率和價值,可以從3個方面著手:
自帶配置指的是IDEA本身就有的,但是比較容易被忽略的。
快捷鍵基本都是IDEA內(nèi)置的功能,這些功能是針對大多數(shù)開發(fā)者比較通用的,通過快捷鍵可以避免鼠標點按過程中低效的問題。
插件則是針對不同開發(fā)者提供的一些個性化支撐,比如你喜歡Vim的鍵盤操作,那可以使用IdeaVim插件,如果你覺得在代碼之間的跳轉(zhuǎn)比較麻煩,可以使用AceJump插件。
下面,我就分別從這兩個方面給大家介紹一些如何更大程度的發(fā)揮IntelliJ IDEA的效率。
自帶配置
后綴補全
每當(dāng)你有一個現(xiàn)有的表達式時,你可以在一個點后面附加一個特定的后綴,并使用Tab鍵來應(yīng)用它。IntelliJ IDEA接收表達式,并根據(jù)提供的后綴對其進行轉(zhuǎn)換。
加入,你有一個字符串列表名為items,現(xiàn)在你需要遍歷它,按照常規(guī)操作,就應(yīng)該開始敲擊鍵盤輸入for …,寫一大串循環(huán)遍歷語句。
如果通過后綴補全,你只需要輸入items.for,IDEA就會自動識別for這個后綴自動創(chuàng)建一個for-each表達式,如下圖所示:
是不是很有意思?接下來再試試try這個后綴后綴:
它會快速生成一個try-catch表達式,是不是很高效?
除了這兩個之外,還有很多后綴補全模板:
- fori:通過索引進行列表迭代
- forr:用索引按相反的順序進行迭代
- switch:生成switch表達式
- sout:使用System.out.println打印表達式
- null:檢查表達式是否為空
- notnull:檢查表達式是否為非空
通過一個簡單的后綴,就可以補全一串表達式,效率也得到了很大的提升。
該功能最初在ReSharper中可用,然后作為IDEA的一個單獨插件,后來在13.1版本中作為核心功能被引入IDEA。
我在另一篇文章中詳細的介紹了后綴補全功能的用法,想要深入了解的同學(xué)可以看一下:
實時模板
首先,來看一個,你怎么編寫下面這個數(shù)函數(shù):
public static void main(String[] args) { }
逐字逐句的敲擊鍵盤嗎?效率太低了!
4個字母就可以解決的事情,為啥要那么麻煩?
我們只需要在IDEA里輸入psvm然后按下Tab鍵就可以快速生成模板
這就是實施模板的功能。
除了這個之外,還有很多。
psfs:
public static final String
sout:
System.out.println();
它的用法和后綴補全有點相似,我們可以在設(shè)置Editor Live Templates查看當(dāng)前支持的實時模板,也可以自定義實時模板。
快捷鍵
編碼
- Ctrl+Space: 基本代碼補全
- Ctrl+Shift+Enter: 補全當(dāng)前語句
- Alt+Enter: 快速修復(fù)
- Ctrl+Alt+L: 格式化代碼
- Ctrl+B: 轉(zhuǎn)到聲明/用法
- Ctrl+Shift+B: 轉(zhuǎn)到實現(xiàn)
- Ctrl+U: 轉(zhuǎn)到超級方法
- Alt+Insert: 生成代碼
- F2: 下一個高亮顯示的錯誤
- 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)到類
- Ctrl+Shift+N: 轉(zhuǎn)到文件
- Shift+Shift: 搜索所有內(nèi)容
- Alt+1: 項目視圖
- Alt+F1+Enter:跳轉(zhuǎn)到項目視圖中的文件
- Ctrl+Shift+F: 在文件中查找
- Alt+Left/Right: 切換打開的文件
運行
- Ctrl+Shift+F10: 運行當(dāng)前環(huán)境
- Shift+F10: 運行
- Shift+F9: 調(diào)試
- F7/F8/F9: (調(diào)試模式)進入/跳過/恢復(fù)程序
插件
1. Codota
Codota根據(jù)數(shù)以百萬計的開源Java程序和你的上下文補全代碼行,幫助你更快地編碼,減少錯誤。
它提供代碼自動補全,內(nèi)聯(lián)和相關(guān)的代碼示例,以及基于你自己的編碼情況的代碼建議。
2. Rainbow Brackets
Rainbow Brackets可以提供醒目、好看的括號,能夠幫助我們更高效的匹配代碼中成對的括號。
3. Statistic
Statistic插件顯示項目統(tǒng)計數(shù)據(jù),這個插件顯示按擴展名排序的文件以及大小、行數(shù)等。
4. AceJump
AceJump允許你快速將光標導(dǎo)航到編輯器中可見的任何位置。
你只需要簡單地按下ctrl+;,輸入一個字符,然后輸入匹配的字符給AceJump。
5. CamelCase
使用這個插件,你可以在CamelCase、camelCase、snake_case和SNAKE_CASE這些不同格式的命名之間輕松切換。
6. Presentation Assistant
這個插件顯示你調(diào)用任何行動的名稱和對應(yīng)的Win/Mac快捷方式,能夠在你操作的過程中教會你如何使用快捷鍵。
7. Code Iris
這個插件將你的項目中的模塊、包和類可視化。它就像一個基于UML的地圖,可以用于你的源代碼。
8. QAPlug
QAPlug是一個用于管理代碼質(zhì)量的Intellij IDEA插件,它集成了PMD、Checkstyle和Findbugs等工具。
9. SmarterEditor
這個插件使你在使用IntelliJ時更有效率,它可以將經(jīng)常使用的操作映射到一個快捷方式上,以此提升效率。
10. Grazie
這個插件為你在IDE中寫的文本提供智能拼寫和語法檢查。
建議大家有空可以多瀏覽Github,有很多好用的開源免費工具。但是,目前Github上項目多如牛毛,而且刷榜現(xiàn)在也非常嚴重,想要找到優(yōu)質(zhì)的項目變得越來越難。這里,給大家推薦Github上一個非常不錯的項目《DevWeekly》,這個項目每周都會精挑細選一些優(yōu)質(zhì)的開源項目,涵蓋C++、JAVA、JavaScript、Python、Go等不同編程語言。此外,還有一些開源工具、優(yōu)秀的技術(shù)文章,喜歡的同學(xué)可以Star并收藏一下,每周五會定期更新:
https://github.com/Jackpopc/DevWeekly