25個(gè)2023年最新的IntelliJ IDEA插件(上)
IDE競(jìng)爭(zhēng)力在于提供最佳的開(kāi)發(fā)人員體驗(yàn)。除了核心功能外,所有主要供應(yīng)商都在投資插件生態(tài)系統(tǒng),該生態(tài)系統(tǒng)支持特定技術(shù)或工作流,并能更好地集成開(kāi)發(fā)人員使用的技術(shù)和工具。
類似于其他IDE,IntelliJ通過(guò)插件擴(kuò)展了軟件的功能,可以提高您的生產(chǎn)力和編碼幸福感。您可以直接從JetBrains市場(chǎng)將IntelliJ IDEA插件安裝到您的IntelliJ IDE中,本文附安裝鏈接。
本文分享一些最受喜歡、最具創(chuàng)新性的IntelliJ IDEA插件,并介紹這些插件如何增強(qiáng)生產(chǎn)力和開(kāi)發(fā)人員體驗(yàn)。
一、生產(chǎn)力和自動(dòng)化
1. WakaTime
安裝鏈接:https://wakatime.com/
作為開(kāi)發(fā)人員,會(huì)經(jīng)常陷入某個(gè)特定項(xiàng)目的工作中,而忽略了其他任務(wù)。Waka Time插件可以幫助您重新掌控時(shí)間管理,有效分配時(shí)間到不同的項(xiàng)目當(dāng)中。
使用WakaTime,您可以輕松追蹤在IntelliJ IDEA上編寫(xiě)代碼的時(shí)間,并準(zhǔn)確記錄所屬項(xiàng)目。此外,WakaTime還提供詳細(xì)的生產(chǎn)力分析,幫助您了解自己的編碼模式。它還能分析您的操作系統(tǒng)使用情況、常用功能、編程語(yǔ)言以及特定拉取請(qǐng)求所花費(fèi)的時(shí)間等其他有用信息。
借助WakaTime,您可以確定自己最高效的工作時(shí)間,并更加關(guān)注時(shí)間管理,有助于保持健康的工作與生活平衡。此外,您還可以選擇與其他開(kāi)發(fā)人員共享活動(dòng),以提高自己的責(zé)任感和工作效率。
2. Tabnine智能代碼補(bǔ)全(Tabnine AI Code Completion)
安裝鏈接:https://www.tabnine.com/
在編寫(xiě)軟件的重要業(yè)務(wù)邏輯之前,不斷重復(fù)編寫(xiě)樣板代碼讓人感到非常沮喪。Tabnine是一個(gè)由人工智能驅(qū)動(dòng)的助手,可以幫助您擺脫編寫(xiě)重復(fù)代碼的煩惱,讓您能夠?qū)W⒂诟匾娜蝿?wù)。
與普通的基本代碼完成插件不同,Tabnine IntelliSense更進(jìn)一步。它通過(guò)先進(jìn)的AI模型理解您代碼的上下文,并生成整行代碼甚至整個(gè)函數(shù),準(zhǔn)確性前所未有。更重要的是,Tabnine可以學(xué)習(xí)和適應(yīng)您獨(dú)特的代碼模式和風(fēng)格,確保編碼一致性。
Tabnine支持多種編程語(yǔ)言,包括Java、Typescript、Python、Rust和JavaScript等。無(wú)論您使用哪種語(yǔ)言,Tabnine都可以提供幫助。Tabnine與IntelliJ IDEA和其他流行的IDE完美結(jié)合,讓您無(wú)需額外配置開(kāi)發(fā)環(huán)境,專注于編寫(xiě)代碼。
3. Key Promoter X
安裝鏈接:https://plugins.jetbrains.com/plugin/9792-key-promoter-x
若您對(duì)記住所有菜單選項(xiàng)和鍵盤快捷方式感到困難,那么Key Promoter X將成為IntelliJ插件中的救星。
當(dāng)涉及到鍵盤快捷方式時(shí),Key Promoter X就像您的私人導(dǎo)師。它會(huì)在您鼠標(biāo)懸停在不同菜單上時(shí)顯示相應(yīng)的鍵盤快捷方式提示,這樣您就不必立即回憶所有的快捷方式,而是逐漸在使用Key Promoter X的過(guò)程中形成對(duì)這些快捷方式的肌肉記憶。
Key Promoter X的另一個(gè)特點(diǎn)是它逐漸了解您與IntelliJ和工作流之間的交互方式,根據(jù)您的鼠標(biāo)和鍵盤操作,Key Promoter X會(huì)推薦適合您頻繁操作的快捷方式。使用這個(gè)IntelliJ插件可以幫助您更快地瀏覽IDEA,提升整體生產(chǎn)力水平。
二、持續(xù)反饋 - IDES插件
Digma Continuous Feedback
安裝鏈接:https://plugins.jetbrains.com/plugin/19470-digma-continuous-feedback
Digma是一個(gè)運(yùn)行時(shí)linter,旨在幫助開(kāi)發(fā)人員快速識(shí)別復(fù)雜代碼庫(kù)中的風(fēng)險(xiǎn)代碼、潛在錯(cuò)誤和瓶頸。為了實(shí)現(xiàn)快速開(kāi)發(fā),在這個(gè)過(guò)程中,Digma Feedback是一個(gè)非常有用的IDE插件。
Digma Feedback通過(guò)對(duì)代碼運(yùn)行時(shí)數(shù)據(jù)進(jìn)行分析來(lái)發(fā)現(xiàn)潛在問(wèn)題。它使用linting和檢測(cè)功能來(lái)突出代碼中可能存在的風(fēng)險(xiǎn),并提供代碼更改分析和上下文。這使得開(kāi)發(fā)人員在處理復(fù)雜項(xiàng)目時(shí)能夠更快地進(jìn)行開(kāi)發(fā)。該插件的設(shè)計(jì)理念是為了縮短反饋循環(huán)的時(shí)間。
使用Digma,您可以在編寫(xiě)代碼時(shí)進(jìn)行l(wèi)int操作,以查找常見(jiàn)的代碼異味和問(wèn)題:
- 錯(cuò)誤熱點(diǎn)
- 瓶頸和并發(fā)性
- 查詢反模式
- 識(shí)別風(fēng)險(xiǎn)和受影響的代碼以進(jìn)行代碼更改
- 性能趨勢(shì)
與專注于在問(wèn)題被識(shí)別后進(jìn)行故障排除和調(diào)試的傳統(tǒng)可觀察性工具不同,Digma專注于持續(xù)反饋,確保開(kāi)發(fā)人員可以在不需要手動(dòng)聚合和分析的情況下訪問(wèn)最新的見(jiàn)解。
通過(guò)消除解釋原始數(shù)據(jù)的耗時(shí)過(guò)程,Digma節(jié)省了您寶貴的時(shí)間,并使您能夠?qū)W⒂诮鉀Q問(wèn)題。使用Digma,您可以利用實(shí)時(shí)提供的實(shí)用見(jiàn)解,主動(dòng)優(yōu)化和改進(jìn)您的代碼。
Digma通過(guò)作為可觀察性數(shù)據(jù)的另一個(gè)目標(biāo)來(lái)與現(xiàn)有框架(特別是OpenTelemetry)集成。通過(guò)添加一行代碼,開(kāi)發(fā)人員可以利用Digma的功能并從其見(jiàn)解中受益。
目前,Digma支持Java等編程語(yǔ)言,未來(lái)計(jì)劃支持Python和GoLang。類似地,支持IntelliJ IDEA等IDE,并計(jì)劃增加與VS Code和PyCharm兼容性。
三、語(yǔ)言支持和工具
1. Kotlin
安裝鏈接:https://plugins.jetbrains.com/plugin/6954-kotlin
如果您是Android開(kāi)發(fā)人員,或者至少是一個(gè)密切關(guān)注這個(gè)領(lǐng)域發(fā)展的愛(ài)好者,那么一定聽(tīng)說(shuō)過(guò)Kotlin如何改變Android開(kāi)發(fā)。Kotlin于2016年由JetBrains首次推出,近年來(lái)迅速走紅,甚至在Android開(kāi)發(fā)中與Java等語(yǔ)言并駕齊驅(qū)。被谷歌等科技巨頭采用也推動(dòng)了Kotlin的聲望。
如果您已經(jīng)對(duì)Kotlin感到興奮,IntelliJ IDEA已經(jīng)有了一個(gè)Kotlin插件,可以讓您更好地體驗(yàn)Kotlin的開(kāi)發(fā)。使用Kotlin插件,您可以訪問(wèn)令人興奮的功能,例如代碼完成、錯(cuò)誤突出顯示和智能建議,以幫助您編寫(xiě)干凈、簡(jiǎn)潔的Kotlin代碼。
如果您的代碼庫(kù)是Java,那么您會(huì)很高興地知道,Kotlin插件保證與Java 100%兼容。這使您可以逐步將代碼庫(kù)遷移到更具表現(xiàn)力和簡(jiǎn)潔性的Kotlin中。您還可以訪問(wèn)特定于Kotlin的功能,例如數(shù)據(jù)類和擴(kuò)展函數(shù),以及強(qiáng)大的重構(gòu)和導(dǎo)航功能。
2. Scala
安裝鏈接:https://plugins.jetbrains.com/plugin/1347-scala
您可能已經(jīng)注意到,盡管Scala不是一種新的編程語(yǔ)言,但近年來(lái)它備受矚目,其受歡迎程度穩(wěn)步上升。
事實(shí)證明,Scala是一種類型安全的JVM和多范式語(yǔ)言,支持函數(shù)式和面向?qū)ο缶幊獭cala之所以受歡迎,是因?yàn)樗哂歇?dú)特的特性,如不可變性、case類、類型推斷等。
使用Scala IntelliJ插件,您無(wú)需配置新環(huán)境即可學(xué)習(xí)或開(kāi)發(fā)Scala軟件。Scala插件使您可以訪問(wèn)編碼輔助功能,例如代碼完成、語(yǔ)法突出顯示、重構(gòu)等。您可以使用Scala IntelliJ插件訪問(wèn)其他特定于Scala的功能,例如與sbt的集成、測(cè)試框架支持(ScalaTest、Specs2、uTest)、Scala調(diào)試器、工作表和Ammonite腳本。
3. Dart
安裝鏈接:https://plugins.jetbrains.com/plugin/6351-dart
Dart是由Google開(kāi)發(fā)的一種開(kāi)源的面向?qū)ο缶幊陶Z(yǔ)言,用于創(chuàng)建吸引人的Web和移動(dòng)應(yīng)用程序的用戶界面。如果您熟悉C語(yǔ)法,那么您會(huì)發(fā)現(xiàn)Dart非常容易學(xué)習(xí)。Dart在Flutter中非常受歡迎,F(xiàn)lutter是一個(gè)跨平臺(tái)開(kāi)發(fā)框架,可以讓開(kāi)發(fā)人員從單個(gè)代碼庫(kù)部署桌面、Web和移動(dòng)應(yīng)用程序。
使用IntelliJ Dart插件,您可以在IntelliJ IDEA中開(kāi)發(fā)和調(diào)試Dart Web和命令行應(yīng)用程序。安裝后,您現(xiàn)在可以訪問(wèn)編碼輔助功能,例如格式化、代碼完成、重構(gòu)、意圖等等。
Dart IntelliJ插件還包括特定于Dart的功能,例如與Dart分析服務(wù)器的集成和內(nèi)置的Dart調(diào)試器,使您能夠運(yùn)行和調(diào)試Dart應(yīng)用程序。
四、框架支持
1. Flutter
安裝鏈接:https://plugins.jetbrains.com/plugin/9212-flutter
Flutter是由Google開(kāi)發(fā)的開(kāi)源UI框架。在跨平臺(tái)開(kāi)發(fā)方面,F(xiàn)lutter是王者。Flutter使用Dart編程語(yǔ)言;使用Flutter作為框架,您可以開(kāi)發(fā)高性能應(yīng)用程序,這些應(yīng)用程序在Android和IOS設(shè)備上無(wú)縫運(yùn)行。
IntelliJ IDEA支持使用IntelliJ Flutter插件開(kāi)發(fā)Flutter應(yīng)用程序。由于Flutter基于Dart安裝,因此IntelliJ Flutter插件還安裝了Dart編程語(yǔ)言插件。
使用IntelliJ IDEA進(jìn)行Flutter開(kāi)發(fā)的好處之一是其直觀的用戶界面和標(biāo)準(zhǔn)功能,例如代碼完成、語(yǔ)法突出顯示、導(dǎo)航到類型聲明以及Dart分析窗口。
其他有用的功能包括內(nèi)置的調(diào)試和分析工具,可以在瀏覽器中運(yùn)行,并具有設(shè)置斷點(diǎn)和訪問(wèn)IntelliJ IDEA內(nèi)的Flutter Inspector等功能。
2. Node js
安裝鏈接:https://plugins.jetbrains.com/plugin/6098-node-js
大多數(shù)開(kāi)發(fā)人員傾向于將IntelliJ與Android開(kāi)發(fā)相關(guān)聯(lián),特別是Java和Kotlin。雖然IntelliJ通過(guò)Android Studio為Android開(kāi)發(fā)提供了支持,但事實(shí)是,IntelliJ是一個(gè)通用的IDEA,支持許多其他編程語(yǔ)言和框架。
Node.js是由IntelliJ通過(guò)Node-js IntelliJ插件支持的流行框架之一。使用此插件,您可以使用IntelliJ IDEA使用Node和Express js Framework開(kāi)發(fā)服務(wù)器端應(yīng)用程序。
通過(guò)Node.js插件,您可以訪問(wèn)一些值得注意的功能,例如分析器和附加調(diào)試器,這些功能可以讓您在IntelliJ IDEA中運(yùn)行Mocha測(cè)試,并從主屏幕開(kāi)始新的Express項(xiàng)目。