Visual Studio Code

L’ambiente in cui si lavora, qualunque sia il linguaggio.

Un editor di codice gratuito, oggi il più diffuso in assoluto. Non è legato a un linguaggio: con le estensioni giuste lavora con Python, R, SQL, Quarto e i file di configurazione, nella stessa finestra.

Cosa cambia rispetto a un editor qualsiasi

Tre cose, molto pratiche. Vede l'intera cartella del progetto invece del singolo file, quindi ritrovare dove è definita una funzione o dove viene usata una variabile è immediato. Mostra la cronologia delle modifiche accanto al codice. Ed esegue il codice dove serve, anche su una macchina remota o dentro un contenitore, continuando a scrivere in locale.

Dove lavora Visual Studio Code nella filiera dei datiLeggereGestire ilvolumeControllareAnalizzareComunicareVisual Studio CodeRHO
Visual Studio Code non occupa un passaggio della filiera: è l'ambiente in cui si lavora a tutti.

Il rapporto con RStudio

RStudio resta più comodo per chi lavora quasi solo in R: la gestione dei dati in memoria e dei grafici è pensata per quello. Visual Studio Code conviene quando nel progetto convivono linguaggi diversi, o quando la stessa persona passa fra analisi, query e documentazione. Non è una sostituzione, è una scelta che dipende dal progetto.

Un esempio: le estensioni dichiarate nel progetto

Visual Studio Code permette di scrivere nella cartella del progetto quali estensioni servono. Basta un file .vscode/extensions.json:

{
  "recommendations": [
    "REditorSupport.r",
    "ms-python.python",
    "quarto.quarto"
  ]
}

Chi apre il progetto riceve la proposta di installare quelle tre e nessun'altra: il supporto a R, quello a Python e quello a Quarto. È il modo più semplice per trasformare l'elenco concordato con i sistemi informativi in qualcosa che viaggia con il codice, invece che in una nota che nessuno rilegge.

Il punto delicato: le estensioni

La libertà di installare componenti aggiuntivi è anche il rischio principale. Ogni estensione è codice di terzi che gira sulla vostra macchina e può leggere ciò che avete aperto. In un contesto in cui si trattano dati personali o riservati questo non è un dettaglio: vale la pena concordare con i sistemi informativi un elenco di estensioni ammesse e fermarsi lì.

Gli errori che si fanno tutti

  • Aprire il file invece della cartella. Molte funzioni, dalla ricerca nel progetto all'integrazione con Git, lavorano sulla cartella aperta. Aprendo un file singolo si perde quasi tutto ciò che distingue l'editor.
  • L'interprete sbagliato. Se sul computer convivono più versioni di Python, l'editor può usarne una diversa da quella del progetto. Il comando Python: Select Interpreter mostra quale è in uso.
  • R senza il motore di analisi del codice. L'estensione per R funziona, ma completamento e diagnostica arrivano solo dopo aver installato in R il pacchetto languageserver.
  • Le estensioni accumulate. Ognuna aggiunge comandi, scorciatoie e avvisi. Dopo qualche mese è difficile capire quale faccia cosa: meglio poche e dichiarate.

In azienda

Si installa senza privilegi di amministratore nella versione portabile, il che lo rende spesso l'unico ambiente moderno ottenibile su postazioni bloccate. Il collegamento a macchine remote è la funzione che più spesso viene limitata dalle politiche di rete.

Dove si prende

Si scarica gratuitamente da code.visualstudio.com. La modalità portabile è disponibile solo con l'archivio ZIP per Windows: si scompatta, si crea una cartella data accanto al programma, e impostazioni ed estensioni restano lì. Per lavorare con R serve anche R installato, con l'estensione dedicata e il pacchetto languageserver.

Per imparare

La documentazione ufficiale è il punto di partenza migliore, in particolare le pagine su R in Visual Studio Code e sulla modalità portabile. Per R, il wiki dell'estensione spiega l'installazione su ciascun sistema operativo.

Quando ha senso adottarlo

Quando smettete di lavorare su un file solo e iniziate a lavorare su un progetto, con più linguaggi e più persone.

Vedi anche

R · Python · Git

Volete un ambiente di lavoro comune per il vostro gruppo?