GitHub: un “copilota” completa il codice su Visual Studio Code


Meridio avatar
Meridio

 

GitHub, la più nota piattaforma di code hosting della Rete nonché controllata della Casa di Redmond, ha redo disponibile un nuovo strumento per il completamento del codice che prende il nome di GitHub Copilot. Si tratta sostanzialmente di un’estensione dell’IDE Visual Studio Code creata con lo scopo di aiutare gli sviluppatori a concentrarsi su un problema, guidandoli alla ricerca di una soluzione quanto più rapida possibile.

Completamento del codice con l’AI

Tale risultato non viene ottenuto proponendo il solito menu a cascata che offre una lista di funzioni o altri costrutti sintattici, ma tramite suggerimenti corredati dalle linee di codice che più si adattano a quanto è stato digitato in precedenza.

Non si tratta naturalmente della prima soluzione messa disposizione da Visual Studio Code per il completamento dinamico dei sorgenti, a tal proposito basterebbe citare IntelliCode, anch’esso basato sull’Intelligenza Artificiale, che è stato migliorato nel tempo grazie all’analisi dei repository di GitHub stessa e del codice scritto dagli utilizzatori.

Copilot nasce però da un presupposto differente, cioè con l’intenzione di fornire agli sviluppatori una sorta di “collaboratore” che diventerà via via sempre più capace sfruttando l’AI di GitHub e il contributo di milioni di Developer sparsi in tutto il Mondo. Per quanto riguarda l’apprendimento automatico, Copilot può contare anche su un sistema di AI denominato OpenAI Codex che ha la capacità di tradurre il linguaggio naturale in codice.

L’importanza dei test

Il progetto, per quanto già ampiamente testato, è ancora in fase embrionale. Per questa ragione è utile ricordare che GitHub rifiuta qualsiasi attribuzione di responsabilità legata al codice scritto con l’ausilio di Copilot. Questo significa che tutti i sorgenti prodotti con questo tool potrebbero presentare bug e vulnerabilità, anche gravi, e sarà sempre necessario provvedere ai test e alle revisioni che normalmente vengono effettuati quado s’implementa un’applicazione.

La ragione di tale precisazione sono facilmente intuibili, se infatti Copilot basa il suo funzionamento sull’analisi di codice reso disponibile pubblicamente, buona parte di quest’ultimo potrebbe presentare costrutti deprecati o insicuri, richiami ad API (Application Programming Interface) obsolete o snippet non sufficientemente testati.

Copilot deve essere quindi inteso come un assistente grazie al quale velocizzare le sessioni di coding, vagliare più alternative per la risoluzione di un problema e affrontare con maggiore rapidità eventuali passaggi ripetitivi. Tra i linguaggi supportati troviamo JavaScript, TypeScript, Python, GO e Ruby

 

Fonte: html.it

Condividi