Visual Studio Code e Visual Studio: come scegliere

Per decenni, quando sono arrivato al lavoro la mattina, ho avviato Microsoft Visual Studio (o uno dei suoi predecessori, come Visual C ++ o Visual InterDev), quindi ho preparato il tè ed eventualmente partecipato a una riunione mattutina durante il suo laborioso avvio . Vorrei mantenere l'IDE aperto tutto il giorno durante i cicli di sviluppo / test / debug per evitare un altro ritardo di avvio. Quando ho lavorato a un progetto C ++ con ~ 2 milioni di righe di codice, ho anche avviato il lavoro di ogni giorno eseguendo automaticamente uno script batch che ha eseguito un checkout del codice e una ricostruzione completa del prodotto nelle prime ore.

In questi giorni, non  sento il bisogno di aprire i miei progetti di codice come prima cosa ogni mattina o di tenerli aperti tutto il giorno. Visual Studio Code di solito si avvia abbastanza rapidamente da poter essere produttivo in pochi minuti, anche per progetti di grandi dimensioni. Ho detto di solito, non sempre: Visual Studio Code stesso necessita di un aggiornamento mensile e le molte estensioni che ho installato spesso necessitano dei propri aggiornamenti. Tuttavia, anche l'aggiornamento di una dozzina di estensioni in Visual Studio Code richiede molto meno tempo di Visual Studio per ricostruire le tabelle dei simboli di un grande progetto C ++.

Cos'è Visual Studio Code?

Visual Studio Code è un editor di codice sorgente leggero ma potente che viene eseguito sul desktop ed è disponibile per Windows, MacOS e Linux. Viene fornito con il supporto integrato per JavaScript, TypeScript e Node.js e ha un ricco ecosistema di estensioni per altri linguaggi (come C ++, C #, Java, Python, PHP e Go) e runtime (come .Net e Unità).

Oltre all'idea di essere leggero e di iniziare rapidamente, VS Code ha il completamento del codice IntelliSense per variabili, metodi e moduli importati; debug grafico; linting, editing multi-cursore, suggerimenti sui parametri e altre potenti funzioni di editing; navigazione e refactoring del codice accattivante; e controllo del codice sorgente integrato, incluso il supporto Git. Molto di questo è stato adattato dalla tecnologia Visual Studio.

VS Code corretto è costruito utilizzando la shell Electron, Node.js, TypeScript e il protocollo Language Server e viene aggiornato mensilmente. Le estensioni vengono aggiornate ogni volta che è necessario. La ricchezza del supporto varia tra i diversi linguaggi di programmazione e le loro estensioni, dalla semplice evidenziazione della sintassi e corrispondenza delle parentesi al debug e al refactoring. Puoi aggiungere il supporto di base per la tua lingua preferita tramite i colorizzatori TextMate se non è disponibile alcun server della lingua.

Il codice nel repository di Visual Studio Code è open source con licenza MIT. Il prodotto VS Code stesso viene fornito con una licenza di prodotto Microsoft standard, poiché ha una piccola percentuale di personalizzazioni specifiche di Microsoft. È gratuito nonostante la licenza commerciale.

Cos'è Visual Studio?

Visual Studio (versione corrente Visual Studio 2019) è il principale IDE di Microsoft per Windows e MacOS. Con Visual Studio, puoi sviluppare, analizzare, eseguire il debug, testare, collaborare e distribuire il tuo software.

In Windows, Visual Studio 2019 ha attualmente 17 carichi di lavoro, che sono bundle di installazione di strumenti e componenti coerenti per diversi obiettivi di sviluppo. I carichi di lavoro sono un importante miglioramento del processo di installazione di Visual Studio, perché un download completo e un'installazione di Visual Studio 2019 possono facilmente richiedere ore e riempire un disco, in particolare un SSD.

Visual Studio 2019 per Mac ha un programma di installazione meno complicato rispetto alla versione Windows, principalmente perché non supporta tanti target. Ti consente di sviluppare per Web, dispositivi mobili e desktop con .Net, con supporto per Unity, Azure e Docker incluso per impostazione predefinita. Le destinazioni .Net Core, Android, iOS e MacOS sono opzionali; gli ultimi tre usano Xamarin.

Visual Studio 2019 è disponibile in tre SKU: Community (gratuito, non supportato per uso aziendale), Professional ($ 1.199 primo anno / $ 799 rinnovo) ed Enterprise ($ 5.999 primo anno / $ 2.569 rinnovo). L'Enterprise Edition ha funzionalità per architetti, debug avanzato e test che mancano agli altri due SKU.

Visual Studio o Visual Studio Code?

Penseresti che decidere tra Visual Studio e Visual Studio Code per una determinata attività di sviluppo software sarebbe semplice come decidere tra un IDE e un editor. Non lo è, soprattutto perché VS Code può essere configurato per essere abbastanza vicino a un IDE per molti linguaggi di programmazione. Tuttavia, lungo questa configurabilità derivano una serie di compromessi.

Ad esempio, se il tuo stile di sviluppo è basato sui test, Visual Studio funzionerà immediatamente. D'altra parte, ci sono circa 15 estensioni di sviluppo basate su test per VS Code che supportano Node.js, Go, .Net e PHP. Allo stesso modo, Visual Studio fa un buon lavoro lavorando con i database, in particolare Microsoft SQL Server e i suoi parenti, ma VS Code ha molte estensioni di database. Visual Studio ha un ottimo supporto per il refactoring, ma Visual Studio Code implementa le operazioni di refactoring di base per una mezza dozzina di lingue.

Ci sono alcuni casi chiari. Ad esempio, se sei un architetto di software e hai accesso a Visual Studio Enterprise, ti consigliamo di utilizzarlo. Se è necessario collaborare con i membri del team allo sviluppo o al debug, Visual Studio è la scelta migliore. Se è necessario eseguire un'analisi seria del codice o profiling delle prestazioni o eseguire il debug da uno snapshot, Visual Studio Enterprise ti aiuterà.

VS Code tende ad essere popolare nella comunità di data science. Tuttavia, Visual Studio 2019 ha un carico di lavoro di data science che offre molte funzionalità.

Visual Studio non funziona su Linux; VS Code lo fa. D'altra parte, Visual Studio per Windows ha un carico di lavoro Linux / C ++ e supporto di Azure.

Per i cicli quotidiani di sviluppo / test / debug nelle lingue supportate sia in Visual Studio che in VS Code, che scegli si riduce alle preferenze personali. Se tendi a lavorare su un progetto di sviluppo per ore alla volta, Visual Studio potrebbe essere la soluzione migliore. Se tendi a immergerti nello sviluppo per brevi periodi e ruotare tra altre attività, Visual Studio Code potrebbe renderti più felice.