最近用到了一些能提升工作效率的
IDEA
外掛程式,給小夥伴們分享一下,
都是實實在在能解決實際開發場景中痛處的。
1、POJO to JSON
開發工作中,常常在設計完
API
後,會使用如
GsonFormat
工具來將設計文件上的JSON格式數據生成Java實體類,這可以節省很多時間。
不過,在某些情況下,我們需要將已有實體類轉換為JSON格式數據,那我通常不得不依賴於手動執行單元測試或在
main
方法中,使用JSON處理庫(例如
fastjson
等)來實作物件到JSON字串的轉換,是一件比較麻煩的事情。
使用
POJO to JSON
外掛程式就讓這件事容易的多,只要在實體類名上右鍵執行
MakeJson
,即可生成該類對應的JSON數據,而且它支持多層級的物件。
2、Cool Request
Cool Request
是一款基於IDEA的HTTP偵錯工具,可以看成是輕量版的postman,它會自動掃描計畫程式碼中所有API路徑,按計畫分組管理。一個類被定義為
Controller
且其中的方法被
@RequestMapping
或者
@XXXMapping
註解標註以後就會被掃描到。
對應方法左側會出現一個標誌,點選展開右側資訊看板就可以像在
Postman
中一樣進行偵錯。它支持CURL命令的匯入匯出、環境設定等功能,基本滿足開發偵錯需求。而且,還支持將API匯出到
Apifox
,使得文件匯出變得非常簡單。整體而言,這個功能確實很實用。
3、CamelCase
CamelCase
是個命名風格轉換外掛程式,在進行程式碼規範掃描審查時,我覺得這個外掛程式非常實用,修改起來很簡單。舉個例子:假設我將靜態變量命名為aaaBaa,但作為一名資深程式設計師來說,這樣命名靜態變量顯然不夠專業啊!
publicstaticfinal String aaaBaa = "aaaBaa";
為了更加規範些,我們要將變量名改為大寫字母底線分割的格式。使用
CamelCase
可以在
kebab-case
,
SNAKE_CASE
,
PascalCase
,
camelCase
,
snake_case
和 空格風格之間切換。
mac快捷鍵為 ⇧+⌥+ U ,windows 下為 Shift + Alt +U。
4、any-rule
any-rule
是一個正規表式字典庫,盡管在日常開發中其使用頻率可能不是特別高,但它無疑是一個極為實用的工具。它涵蓋了廣泛的正規表式型別,幾乎包括了你能想到的所有規則。
使用直接右鍵選擇
AnyRule
,支持搜尋、正則驗證、範例展示。
5、Grep Console
Grep Console
可以自訂控制台輸出格式,對控制台中不同級別的日誌設定成不同的顏色。
驗證一下不同級別的日誌在控制台輸出的情況,不同級別顯示不同顏色,這樣在控制台檢視日誌就一目了然了。
@Test
publicvoidlogTest(){
log.info("公眾號:程式設計師小富");
log.error("公眾號:程式設計師小富");
log.warn("公眾號:程式設計師小富");
log.debug("公眾號:程式設計師小富");
log.trace("公眾號:程式設計師小富");
}
6、GenerateO2O
GenerateO2O
外掛程式可以讓我們少些很多程式碼,比如在開發介面時,常常需要將查詢得到的PO物件轉換為DTO物件。通常情況下,需要手動編寫
Converter
轉換方法,但借助這個外掛程式,可以自動生成轉化內容的程式碼,可以少寫很多無趣程式碼。
7、Smart input
Smart input
解決了一件很煩的事,它能幫我們在不同的編碼區域內切換輸入法狀態。就是這個外掛程式可以在我要寫註釋時它切換成中文輸入,寫程式碼就會切換成英文輸入法,不用在手動切換了。
8、Squaretest
這款外掛程式能夠自動生成Mock單元測試,之前我認為它是一個可有可無的外掛程式。直至公司開始實施程式碼品質管控並將單元測試覆蓋率列為KPI的一部份。不過,對於習慣編寫單元測試的同學來說,這個外掛程式無疑是一把解放雙手的利器!
這個外掛程式生成的mock測試程式碼基本上可以直接執行,品質很高。不過好像現在收費了,退而求其次可以使用
TestMe
。
9、TONGYI Lingma
通義靈碼是阿裏推出的一款AI編程外掛程式,經過我的實際體驗後,勉勉強強可以平替
GPT
、
Copilot
,更重要的是它免費!
該外掛程式可以透過自然語言描述你想要的功能,可直接在編輯器區生成程式碼;根據程式碼上下文補全程式碼;支持根據JUnit、Mockito、Spring Test、unit test、pytest 等框架生成單元測試(和
Squaretest
一樣);它還具備和GPT一樣的問答功能。
10、Auto filling Java call arguments
例如,當在方法A中呼叫方法B時,由於方法B具有較多參數,使用該外掛程式可以自動填充呼叫方法的參數,無需逐個手動填寫,從而節省大量復制貼上的操作。
總結
感謝這些外掛程式的開發者們,為我們提供了如此便利高效的工具,極大地提升了我們編程的效率。希望大佬們繼續為開發者社群帶來更多優秀的工具和創新,讓編程變得更加愉快和高效。
👇🏻 點選下方閱讀原文,獲取魚皮往期編程幹貨。
往期推薦