Visual Studio Code vs. Visual Studio:該怎么選?
譯文
【51CTO.com快譯】幾十年來,我在上午工作時,會啟動微軟Visual Studio(或其前身之一,比如Visual C ++或Visual InterDev),然后在它啟動過程中泡杯茶,還可能去參加個早會。我進行開發(fā)/測試/調(diào)試循環(huán)時會整天開著IDE,避免另一次啟動延遲。我開發(fā)約200萬行代碼的C++項目時,還通過自動運行批處理腳本以加快處理每天的工作,腳本可以在凌晨檢出代碼、完成產(chǎn)品的全面重建。
如今,我覺得用不著每天早上先打開代碼項目,或者讓它們整天開著。Visual Studio Code通常啟動速度足夠快,即使對于大型項目而言,我也可以在幾分鐘內(nèi)立馬投入工作。我常說:Visual Studio Code本身需要每月更新,我安裝的許多擴展常常本身需要更新。不過,連更新Visual Studio Code中的十幾個擴展所需的時間也比Visual Studio重建大型C++項目的符號表所花的時間少得多。
不過,在Visual Studio Code和Visual Studio之間進行選擇不像在輕量級編輯器和重量級IDE之間進行選擇那么簡單。雖然Visual Studio Code具有高度可配置性,但Visual Studio的功能高度全面。你的選擇可能不僅取決于你需要的語言支持和功能,還取決于你的工作方式。不妨看看這兩款開發(fā)工具的功能和不足。
Visual Studio Code是什么?
Visual Studio Code是一種輕量級但功能強大的源代碼編輯器,可在桌面上運行,適用于Windows、MacOS和Linux。它內(nèi)置支持JavaScript、TypeScript和Node.js的功能,還有豐富的擴展生態(tài)系統(tǒng),這些擴展面向其他語言(如C++、C#、Java、Python、PHP和Go)和運行時環(huán)境(比如.Net和Unity)。
除了輕量級和快速啟動這個理念外,VS Code還有下列功能:面向變量、方法和導入模塊的IntelliSense代碼完成功能;圖形化調(diào)試;代碼檢查/校驗;多光標編輯;參數(shù)提示及其他強大的編輯功能;出色的代碼導航和重構;以及內(nèi)置的源代碼控制(包括Git支持)。這大部分功能是從Visual Studio技術改編而來的。
VS Code本身使用Electron shell、Node.js、TypeScript和Language Server協(xié)議構建,且每月更新一次。擴展可根據(jù)需要經(jīng)常更新。支持的豐富程度因不同的編程語言及其擴展而異,從簡單的語法高亮、括號匹配到調(diào)試和重構,不一而足。如果沒有語言服務器可用,你可以通過TextMate著色器為偏愛的語言添加基本支持。
Visual Studio Code代碼庫中的代碼是采用MIT許可證的開源代碼。VS Code產(chǎn)品本身是采用標準的微軟產(chǎn)品許可證交付的,因為它有一小部分針對微軟的自定義。盡管有商業(yè)許可證,但它是免費的。
圖1. Visual Studio Code中看到的Visual Studio Code的源代碼
請注意顯示函數(shù)作者和最近更改日期的消息(使用來自Git代碼庫的信息創(chuàng)建)。另請注意屏幕中間的trackSelection()的“peek”彈出窗口。
Visual Studio是什么?
Visual Studio(當前版本是Visual Studio 2019)是微軟面向Windows和MacOS的首選IDE。使用Visual Studio,你可以開發(fā)、分析、調(diào)試、測試、協(xié)作和部署軟件。
在Windows上,Visual Studio 2019目前支持17種工作負載,這些工作負載是針對不同開發(fā)目標的一致的工具和組件安裝包。工作負載是對Visual Studio安裝過程所作的重要改進,因為Visual Studio 2019的整個下載和安裝很可能耗時數(shù)小時,會塞滿磁盤、尤其是SSD。
圖2. Visual Studio 2019支持17種不同的工作負載,代表不同的開發(fā)目標
Visual Studio 2019 for Mac的安裝程序比Windows版本來得簡單,主要是由于它不支持一樣多的目標。它讓你可以使用.Net開發(fā)Web、移動和桌面,默認情況下支持Unity、Azure和Docker。.Net Core、Android、iOS和MacOS等目標是可選的,后三者使用Xamarin。
圖3. Visual Studio for Mac安裝程序
請注意,與Visual Studio for Windows提供17種工作負載相比,它只有4個可選目標。
Visual Studio 2019有三種SKU:社區(qū)版(免費,不支持企業(yè)使用),專業(yè)版(第一年1199美元/ 799美元續(xù)訂)和企業(yè)版(第一年5999美元/2569美元續(xù)訂)。企業(yè)版擁有面向架構師的功能、高級調(diào)試和測試,這些功能是另兩種SKU所沒有的。
圖4. Visual Studio 2019編輯UI
請注意用于測試和分析的菜單項,Visual Studio Code沒有這些功能。
Visual Studio還是Visual Studio Code?
你會認為:就任何特定的軟件開發(fā)任務而言,在Visual Studio和Visual Studio Code之間做出決定就像在IDE和編輯器之間做出決定一樣簡單。事實并非如此,主要是由于VS Code經(jīng)配置后,可以做到對許多編程語言而言與IDE很接近。然而,伴隨這種可配置性而來的是許多不足。
比如說,如果你的開發(fā)風格是測試驅動型,Visual Studio立即就可以使用。另一方面,VS Code有大約15個測試驅動的開發(fā)擴展,可支持Node.js、Go、.Net和PHP。同樣,Visual Studio與數(shù)據(jù)庫(尤其是Microsoft SQL Server及其衍生版)的兼容性很好,但VS Code有好多數(shù)據(jù)庫擴展。Visual Studio擁有出色的重構支持,但Visual Studio Code為六種語言實施了基本的重構操作。
有幾種明確的情況。比如說,如果你是軟件架構師,又可以使用Visual Studio企業(yè)版,你會想要使用Visual Studio。如果你需要與團隊成員協(xié)作、共同開發(fā)或調(diào)試,那么Visual Studio是更好的選擇。如果你需要進行嚴謹?shù)拇a分析或性能分析或從快照進行調(diào)試,那么Visual Studio企業(yè)版會幫助你。
VS Code在數(shù)據(jù)科學界往往很受歡迎。然而,Visual Studio 2019擁有提供許多功能的數(shù)據(jù)科學工作負載。
Visual Studio不能在Linux上運行,VS Code可以運行。另一方面,Visual Studio for Windows擁有Linux/C ++工作負載和Azure支持。
針對使用Visual Studio和VS Code中都支持的語言的日常開發(fā)/測試/調(diào)試周期,選擇哪一個其實歸結為個人偏好。如果你每次搞開發(fā)項目往往搞數(shù)小時,那么Visual Studio可能更適合。如果你從事短時間開發(fā)、在其他任務之間輪換,Visual Studio Code可能會讓你更滿意。
原文標題:Visual Studio Code vs. Visual Studio: How to choose,作者:Martin Heller
【51CTO譯稿,合作站點轉載請注明原文譯者和出處為51CTO.com】