如何用 IDEA 提升十倍開發效率?

工欲善其事,必先利其器。想要提升程式設計開發效率,必須選擇一款順手的開發工具。

JetBrains 公司提供了一系列功能強大、風格統一的開發工具,深受開發者喜愛。其中,IDEA 是面向 Java 開發的專業 IDE(整合開發環境),90% 以上的企業都在使用 IDEA 進行 Java 開發,而不是用其他的工具如 Eclipse。

但是,想要開發效率最大化,僅有好的開發工具是不夠的,還要能夠熟練地使用它。對於 IDEA 的新使用者來說,面對功能如此豐富的開發工具可能會有些迷茫,但又不想花時間去學習如何使用,於是僅僅把它當做能編寫程式碼的記事本了(就是好看點),大材小用。

為大家總結了自己掌握的 IDEA 使用技巧,包括實用外掛、開發技巧和閱讀原始碼的技巧等。只需花 5 分鐘的時間閱讀,即可提升十倍的開發效率!

什麼,你說 IDEA 太貴用不起?如果還是學生黨,可以免費使用IDEA 及 JetBrains 全系列產品哦~

地址:
   https://www.jetbrains.com/shop/eform/students

快捷鍵

要使用任何 IDE(整合開發環境)提升開發及閱讀原始碼的效率,首先要活用快捷鍵。

在 IDEA 中,可以在 preferences 的 keymap 設定中查詢及設定快捷鍵,如圖:

實用外掛

1. Key Promoter X

快捷鍵提示外掛。當你執行滑鼠操作時,如果該操作可被快捷鍵代替,會給出提示,幫助你自然形成使用快捷鍵的習慣,告別死記硬背。

地址:
   https://plugins.jetbrains.com/plugin/9792-key-promoter-x/

2. AiXcoder Code Completer

程式碼提示補全外掛。使用 AI 去自動提示和補全程式碼,比 IDEA 自帶的程式碼補全更加智慧化。

地址:
   https://plugins.jetbrains.com/plugin/13574-aixcoder-code-completer/

3. Arthas Idea

Arthas 命令生成外掛。Arthas 是阿里開源的 Java 線上診斷工具,該外掛可以自動生成 Arthas 線上 Java 程式碼診斷命令,不用再到官網翻文件拼命令啦!

地址:
   https://plugins.jetbrains.com/plugin/13581-arthas-idea/

4. Auto filling Java call arguments

程式碼生成外掛。通過快捷鍵自動補全函式的呼叫引數,針對包含大量引數的建構函式和方法非常有用!

地址:
   https://plugins.jetbrains.com/plugin/8638-auto-filling-java-call-arguments/

5. GenerateAllSetter

程式碼生成外掛。一鍵生成指定物件的所有 set 方法呼叫程式碼,自動賦值,或者生成某方法的返回值,這在單元測試造假資料時非常有用。

地址:
   https://plugins.jetbrains.com/plugin/9360-generateallsetter/

6. GenerateSerialVersionUID

程式碼生成外掛。一鍵為實現 Serializable 介面的類生成 SerialVersionUID。

地址:
   https://plugins.jetbrains.com/plugin/185-generateserialversionuid/

7. GsonFormat

程式碼生成外掛。在類中使用,貼上一段 Json 文字,能自動生成物件的巢狀結構程式碼。

地址:
   https://plugins.jetbrains.com/plugin/7654-gsonformat/

8. Lombok

程式碼生成外掛。配合 Lombok 依賴及註解使用,能夠大大減少 POJO(簡單老式 Java 物件)的程式碼量。

安裝外掛後還要開啟註解支援,可以參照這篇文章進行配置:
   https://www.baeldung.com/lombok-ide 。

外掛地址:
   https://plugins.jetbrains.com/plugin/6317-lombok/

9. Rainbow Brackets

程式碼瀏覽外掛。通過顏色區分括號巢狀層級,便於閱讀,能夠更快地對錯誤程式碼進行定位和調整。但是建議不要在程式碼中出現大量的巢狀哦!

地址:
   https://plugins.jetbrains.com/plugin/10080-rainbow-brackets/

10. CodeGlance

程式碼瀏覽小地圖外掛。在編輯器右側生成 code minimap,可以拖拽小地圖游標快速定位程式碼,閱讀行數很多的程式碼檔案時非常實用。

地址:
   https://plugins.jetbrains.com/plugin/7275-codeglance/

11. GitToolBox

Git 增強外掛。在自帶的 Git 功能之上,新增了檢視 Git 狀態、自動拉取程式碼、提交通知等功能。最好用的是可以檢視到每一行程式碼的最近一次提交資訊。

地址:
   https://plugins.jetbrains.com/plugin/7499-gittoolbox/

12. Translation

翻譯外掛。程式設計師最痛苦的事莫過於閱讀程式碼時遇到不懂的英文單詞,有了這個外掛,滑鼠選中文字,點選右鍵即可自動翻譯成多國語言。

地址:
   https://plugins.jetbrains.com/plugin/8579-translation/

開發技巧

通過外掛可以給 IDEA 增加新功能,但是 IDEA 自帶的功能也非常強大,有很多實用的開發技巧。

1. 使用上述程式碼生成和瀏覽外掛

2. 熟練使用快捷鍵,通過上述 Key Promoter X 外掛漸進式熟悉快捷鍵。

網上對快捷鍵的整理太多了,此處不再贅述,可以參考這兩篇文章:

- IDEA Mac 快捷鍵指南,地址:
   https://www.jianshu.com/p/454c71172c46

- IDEA Win 常用快捷鍵,地址:
   https://www.jianshu.com/p/5de7cca0fefc

比較常用的快捷鍵是換行、複製/刪除當前行、程式碼格式化等

3. 利用快捷鍵為類快速生成程式碼(Win: Alt Insert,Mac: command n)

4. 運用程式碼模板(Live Templates)

程式碼模板是 IDEA 中非常好用的功能,可以通過縮寫(關鍵詞)來生成指定的程式碼段,很多重複的程式碼都可以用這種方式來快速生成,提高效率的同時降低了出錯概率。

示例如下:

IDEA 為我們內建了很多程式碼模板,比如 main:

也可以自己定義縮寫和要生成的程式碼段:

還可以使用預定義變數、自定義變數及使用內建函式,更多高階用法可以參考這篇文章:IDEA 中 live template 的詳細使用教程(地址:
   https://www.jianshu.com/p/3974df6572af)

5. 使用內建剪下板儲存複製歷史

寫程式碼的必備技能是複製貼上,不僅可以提高效率,還可以降低出錯率(比如使用者、祕鑰、地址等資訊)。

IDEA 內建了剪下板,可以幫助我們儲存複製歷史,貼上時按 shift ctrl v 即可選擇複製。

不滿足於內建的剪下板?還可以使用更高階的軟體:Ditto(Windows)或 Alfred(Mac)

6. 使用內建的 Git

IDEA 內建了 Git 輔助工具,能夠視覺化分支管理/切換,程式碼提交/更新/衝突解決/回退,程式碼歷史版本檢視等。在頂部選單 VCS > Git 中可以檢視所有功能:

在底部欄中可以檢視 Git 日誌:

7. 使用內建 HTTP Client 測試介面

不需要再使用 Postman 等外接介面測試工具了,IDEA 內建了 HTTP Client,通過編寫請求指令碼來進行呼叫,非常靈活。

在頂部選單的 Tools > HTTP Client 中開啟:

編寫指令碼進行 HTTP 介面測試:

詳細用法請閱讀官方使用文件,地址:
   https://www.jetbrains.com/help/idea/http-client-in-product-code-editor.html

閱讀原始碼技巧

優秀的程式設計師一定會閱讀很多原始碼,閱讀原始碼也是有很多技巧的。

通常,根據他人總結的專案文件,先看整體(目錄和類圖)再看區域性(類和函式)。對於 Java 專案,就是先檢視包的層級關係,然後分析包中類(介面)之間的關係,包括繼承、實現、委託、方法呼叫等,最後再檢視某個類具體的屬性和方法的具體實現。

IDEA 為整個閱讀原始碼的過程提供了一系列好用的功能支援,能夠大大提高閱讀效率。

1. 檔案/類搜尋

根據檔名搜尋檔案/類

快捷鍵:shift shift(連按兩次)

2. 欄位搜尋

根據檔案內容搜尋,可直接定位到目標內容位置,支援區域性(當前檔案或選中程式碼段)和全域性搜尋(專案/模組/目錄/作用域等)

區域性搜尋快捷鍵:Win: Ctrl F Mac: Command F

全域性搜尋快捷鍵:Win: Ctrl shift F Mac: Command Shift F

3. 跳轉到上/下次游標的位置

檢視原始碼時,經常需要在兩個類中來回跳轉,這個功能就變得相當實用!

檢視上次游標位置快捷鍵:Win: Alt ← Mac: Option Command ←

檢視下次游標位置快捷鍵:Win: Alt → Mac: Option Command →

4. 檢視介面的實現類(或介面方法的實現)

如果游標選中介面方法,直接跳轉到該方法的具體實現。如果有多個實現,則可以選擇跳轉到指定的實現類。

快捷鍵:Win: Ctrl Alt B Mac: Option Command B

5. 檢視方法呼叫樹

可以檢視指定方法的所有呼叫方和被調方。

快捷鍵:Win: Ctrl Alt H Mac: Control Option H

6. 檢視類關係圖

非常實用的功能,直觀清晰地展現類的關係,便於分析。

快捷鍵:Win: Ctrl Alt U Mac: Shift Option Command U

7. 檢視類的繼承樹

能夠檢視類的父類和子類繼承關係。

快捷鍵:Win: Ctrl H Mac: Control H

8. 檢視定義的變數在哪裡被宣告/呼叫

如果游標在變數宣告處,則檢視使用該變數的程式碼;如果游標在使用變數處,則檢視變數的宣告位置。

快捷鍵:Win: Ctrl B Mac: Command B 或按住 Ctrl / Command 點選滑鼠左鍵

9. 檢視定義的變數在哪裡被呼叫

功能和上述功能類似,僅檢視變數的呼叫位置。

快捷鍵:Win: Ctrl Alt F7 Mac: Option Command F7

10. 檢視類的結構

能夠檢視某一個類的屬性、域、方法、繼承方法、匿名類、Lambdas,並快速跳轉到指定位置。

快捷鍵:Win: Alt 7 Mac: Command 7

11. 檢視每行程式碼的提交資訊(需被 Git 管理)

在程式碼行數列表處右鍵,點選 Annotate 開啟程式碼提交資訊顯示:

效果如下,爛程式碼元凶快快顯形!

以上就是 IDEA 使用技巧啦,快去寫幾行程式碼熟悉下吧~