JetBrain的WebStorm優缺點
JetBrain是一間使用Java來做各種語言的IDE的公司,其中的IDE包含了各種知名的Open Source語言,我曾經使用過的包含Rider(C#)、WebStorm(Angular)和Pycharm(Python)。
今天要來講講WebStorm(Angular)我用了一年左右覺得的優點和缺點。
WebStorm主要的開發語言
Webstorm其實主要是以TypeScript、JavaScript、HTML、CSS等語言的IDE,所以就算是寫Static HTML都可以使用Webstrom。
JavaScript框架包含了Angular、React、Vue等熱門的框架,還包含Nodejs的一堆框架如Expressjs等等。
Jetbrain裡面最包山包海的IDE就是WebStorm,只要跟Web有關的開發就是這個的範圍。
Angular開發的好處
由於我只用來做Angular開發,這篇文章就寫Angular開發的優點缺點,首先它有Terminal的小頁面,所以不用切換命令視窗就可以直接在IDE裡面下:
ng g c TestComponent
之類的語句,這個用起來相當方便。
然後跟Git有做整合,雖然我發布會用GitHub Desktop來做,但我想很多人直接使用Git的就有用了。
再者它有完美整合GitHub Copilot和Tabnine Pro等AI 助手,所以寫Code的速度是大增,但這些都是Visual Studio Code多少也可以辦到的。
那就來說一點點Visual Studio Code辦不到的,就是它在TypeScript上的偵錯上,本身IDE就會報錯一些部分和警告一些部分,如重複片段太多次可以寫成一個Function之類的。
IDE最近也導入AI作為智慧提示的基礎,所以這點比Visual Studio Code來做開發會快一些,比如在打一些ID的時候它會自動幫忙完成省一些打字時間。這一點點的時間堆積起來是可觀的時間節省。
然後ng build以後出錯的部分,點錯誤的地方會立刻跳到該行,所以ng build如果一次出現10個錯誤,從最後一個開始往前點,一個一個修,存檔立刻就ng build重跑一遍。
缺點
吃效能是一點,因為它算是比較重量級的IDE,雖然沒有Visual Studio等級那麼重(不是指Visual Studio Code是微軟的Visual Studio)。
我電腦有一台是AMD R9 3900的CPU的,在跑WebStorm做Angular的時候明顯可以感覺到速度的不足,尤其在ng build以後,大概每次更動程式碼都要等5~10秒。
R9 3900已經算相當快的CPU只是有點年紀而已,所以我就換了R9 7950的CPU,編譯程式碼就變成只要1~3秒鐘。
但可以知道R9 7950在組裝的時候成本就高很多,我沒有使用過Intel的CPU測試。
Mac Studio的部分我是使用M2 Max的版本做ng build的測試,速度大概3~5秒,比3900快,但沒有7950快。這也當然,因為M2 Max安靜的要命,也不會熱到我秋冬得開冷氣。
大致上需要這種配備跑WebStorm才會順暢,如果低階一點的跑WebStorm可能就在看它在sealing……building…..的時間很多。
還有缺點嗎?
如果我只是想寫一個簡單的程式,那WebStorm顯得相當龐大,且冗餘的部分很多。
首先它一定會產生一個資料夾做為智慧快速完成的基礎等等,然後如果不會設定的話,產生專案時的Git和內建的ng指令會搞死自己。
必須非常知道它要下什麼指令,才知道是否要用它來創一個新的專案,不然就要創一個空專案自己下npm和ng的指令。
然後如果要用Git來做版本控制,建議一陣子還是要把Package等的資料夾整體備份一份,因為有時候會不明原因出錯在相依性上面。
結論
整體而言,WebStorm是一個不錯的IDE,只要不要在意它要付費的部分,以及它所吃的效能等等。
Bugs也相當少,JetBrain在開發IDE相當用心,插件也很多,可以用AWS Toolkit這類的插件在IDE上節省時間。
但真的就是什麼都要成本,包含自己的硬體也是成本。當然省下的時間成本,我曾經用過Visual Studio Code,兩者都用熟以後發現WebStorm可以省下可觀的時間,尤其在開發一個中大型的專案。