從 Atom 跳到 Visual Studio Code 編輯器

以前最討厭的大概就是微軟的 IDEDreamweaver 了吧,自從離開 Visual Basic 6 生活圈之後我就很少碰到微軟的產品了,除了玩遊戲才會開一下 Windows,不然其他時間都是在用 Macbook。

不過自從 Windows 10 跟 Surface Studio 出來之後,能夠明顯地感受到微軟正在慢慢取代蘋果以前的位置,這樣說也許太過於誇張,不過確實連外國人都有如此感受,我曾看過有個留言說道:

「賈伯斯不是死了,只是跑去微軟而已。」

用這種玩笑話來表示微軟真的進步了。因為這個念頭,想說趁勢來用用看 Visual Studio Code,先前看到些朋友在 Windows 上都用 Visual Studio Code,起初我還想說「難道會比 Atom 好用嗎?」;Atom 確實好用,那強大的擴充性還有可供自訂化的介面,因為 Atom 是 HTML 跟 Coffee 寫的,所以你甚至可以自訂 CSS 樣式表大幅度地變動 Atom 外觀

Atom

Atom 是不錯,但是那啟動速度還有動不動就 Crash 的問題令人感到厭倦,而且 Atom 帶給我的一種感覺就像是在對 Contenteditable 的 Div 進行操作一樣,不像是一般編輯器所帶有的「緊實感」(蠻難形容的),東西都感覺鬆垮垮的,可能是太過於模組化讓我感覺元件和元件之間沒有任何聯繫。

Atom 在一開始給予的功能並不多,或者可以直接稱其為 Notepad++ 也不為過,不過透過擴充功能,Atom 馬上就可以成為開發者的最佳利器,一個帶有測試環境的開發編輯器,甚至是 Minimap程式 Outline函式清單那種東西)馬上就可以安裝,但因為都是第三方套件又加上 Atom 是由 Electron 製作的,造成各個第三方擴充插件 UI 方面很不和諧,例如有的 UI 是漸層,有的是 Bootstrap,有的則是扁平化⋯⋯

Visual Studio Code

我原本還以為 Visual Studio Code 是英文版本的(畢竟程式開發的東西都這樣),但是開啟之後發現是中文而且竟然不是新細明體那是你的名產欸),再稍微把玩了一下發現預設的工具還蠻齊全的,有 Git 圖形化控制終端機測試面板,還有檔案分頁籤也很完善,連檔案圖示都有甚至還支援自訂圖示佈景),我原本還想笑 Visual Studio Code 的使用者拜託遠離微軟的生產力工具,但是看來我應該改觀了。

在 Visual Studio Code 上東西都很順暢該有的動畫都有按鈕也有緊實感,不會像 Atom 那樣按鈕感覺鬆鬆的(大概是沒有很在意 CSS 那塊),而且最重要的是擴充插件也有啊!甚至還會在你開啟新語言專案時,自動詢問你要不要安裝相關的擴充插件,用到目前還蠻人性化的。

優點和劣勢

這裡簡單做出兩個編輯器的比較。

Visual Studio Code

Visual Studio Code 用到目前就是我從 Atom 跳槽的對象了。

優點

  1. 正體中文介面
  2. 編輯器介面緊實感足夠,像是真正的編輯器。
  3. 啟動速度快
  4. 滑鼠選取速度不會感到延遲
  5. 支援擴充套件
  6. 內建 Git 圖形化的處理。
  7. 內建除錯功能
  8. 有著同樣檔名的 Tab 時會自動顯示資料夾名稱。
  9. 內建佈景主題系統檔案圖示配置。
  10. 內建終端機功能。
  11. 內建的擴充套件市集更方便、速度更快、內容也不少。

缺點

  1. 主題在切換的時候不能預覽,切換後你還要重新叫出視窗換到下一個。
  2. 擴充套件不是基於 Github,而且不能從終端機直接安裝。
  3. 沒有設定介面,取而代之的是打開一個設定文件(不過有中文註釋)。

Atom

Atom 是我第一個使用的 Electron 軟體,自訂性高,但也因此造成不少不穩定的問題,基於 Webkit 的核心也讓部分效能問題浮現。

優點

  1. 自訂性非常廣,因為整個編輯器都可以用 CSS 修改。
  2. 擴充套件眾多,而且是基於 Github 倉庫的市集。
  3. 發生錯誤時 Atom 會自動幫你找出先前已回報的 Issue 讓你知道是否有解答,沒有的話還可以幫你發 Issue。

缺點

  1. 新增文件會跳出視窗問名稱,而不能直接在文件列表輸入
  2. 滑鼠選取程式碼的拖拉速度有明顯延遲
  3. 擴充套件之間的介面不統一
  4. 啟動速度夭壽慢
  5. 效能低略
  6. 沒有正體中文介面,雖然有相關套件可以安裝,但是已經有半年左右沒更新了。

總結

基於以上幾點,我想答案已經很明確了,謝謝 Atom 伴隨我半年之久,接下來就是看我的下一篇文章會不會是從 Visual Studio Code 跳槽到其他編輯器了。