為什麼VSCode是程式碼編輯器而不是IDE?

banq發表於2024-04-13

VS Code 已經具有任何 IDE 功能:語法突出顯示、程式碼自動完成、程式碼重構、程式碼摺疊、除錯、測試、構建系統整合、編譯器/直譯器整合、git 整合、專案管理、分析、實時共享等等!

那麼,為什麼它經常被歸類為程式碼編輯器而不是 IDE 呢?
根據定義:

  • IDE 必須能夠立即編譯和除錯應用程式。
  • “IDE”中的“I”代表“整合”。
  • Visual Studio Code在沒有外掛下不是整合的,不能立即編譯和除錯

可定製與開箱即用
VS Code 是非常可定製的。問題是,你必須定製它才能使用它; VSC 開箱即用就是一個 notepad++++,正是外掛擴充套件賦予了它強大的功能。

完整的 IDE(如 IntelliJ、PHPStorm、Visual Studio)是一種完全不同的體驗。因為 IDE 整合了很多/幾乎所有功能,並且語言支援大多是提前知道的,所以它可以對程式碼的外觀做出假設。這會影響諸如暴露的設定選單的內容、偵錯程式的工作方式(在我看來 IntelliJ 特別棒)、它如何處理檔案大小和長度等。

普適性與針對性
IDE 通常只針對幾種特定的編譯語言:有很多 Java IDE,我們有用於 C#、VB 和 F# 的 VisualStudio。

在古代,我們在簡單的文字編輯器或 IDE 之間進行選擇。但自從像 vsCode 這樣的高階編輯器興起以來,這種區別已經變得有點無關緊要了。在安裝 Visual Studio 的過程中,也許您可​​以選擇所需的外掛(您可以對 vsCode 執行相同的操作),然後選擇安裝所有允許您編譯和除錯 C# 的 C# 工具。區別最多就是 Visual Studio 的工具稍微“內建”一些並且更好一些。

對於某些不能在編輯器中編譯或除錯的語言,從來沒有任何 IDE。例如,根據定義,客戶端 Javascript 沒有 IDE - 因為它沒有被編譯。並且沒有瀏覽器就不會執行。

名可名非常名
製造新名詞,讓人們陷入詞語陷阱:
Visual Studio Code 是一個 IDE。它只是採用模組化設計,但它幾乎可以完成 JetBrains IDE 能做的所有事情。

當人們說 VSCode 不是 IDE 時,他們的意思是它在預設的新安裝狀態下不是 IDE。我認為到那時它甚至無法識別個別語言。些 IDE 實際上是 VSCode內建了一些擴充套件。

即使是 Jetbrains IDE 也是一個基本編輯器,內建了某些特定於語言的功能。您可以向一個 Jetbrains IDE 新增擴充套件以將其轉換為另一個,就像您可以向 CLion 新增 rust 擴充套件以將其 C IDE 轉換為 Rust IDE,這在功能上與使用其專用 RustRover IDE 基本相同。

你可以自己讓 VSCode 成為一個 IDE。當你插入必要的部分後,它絕對是一個 IDE。它也可能是一個功能極其豐富的產品,就像整個 Flutter 設定非常令人印象深刻一樣。

 

相關文章