Github Copilot Labs

Un'estensione sperimentale per migliorare Github Copilot

Un copilota Github più potente

Migliora la tua esperienza di programmazione con Github Copilot Labs e il suo set di funzioni predefinite con un clic, chiamate "Pennelli". Github Copilot ti consente di tradurre rapidamente il tuo codice da un linguaggio di programmazione a un altro. Può anche documentare e spiegare automaticamente il tuo codice, nonché trovare e correggere bug.

Come usare Github Copilot Labs

Affinché Github Copilot Labs funzioni, devi soddisfare i seguenti requisiti.

  • un abbonamento Github Copilot attivo
  • Codice VS

Poiché Github Copilot Labs è un'estensione VS Code, è sufficiente installarlo (collegamento anche nell'addendum).

Image e2ad1fec4d4a

Image 2e1994de53fb

Caratteristiche

Come suggerisce il nome, Github Copilot Labs è una funzionalità sperimentale per aumentare Github Copilot. Offre molte nuove funzionalità, ma è anche ben lungi dall'essere pronto per l'uso in produzione. Alcune funzionalità funzionano meglio di altre, ma al momento della scrittura, la qualità è incostante.

Caratteristica: spiegare il codice

Contrassegna semplicemente uno qualsiasi dei tuoi codici e richiedi una spiegazione del codice. Spiegare il codice può essere particolarmente utile per gli sviluppatori che non conoscono una base di codice o che lavorano con codice non familiare. Può anche essere utile per sviluppatori esperti che desiderano comprendere la logica e il ragionamento alla base di determinate scelte di codice. Potrebbe fornire un riepilogo di alto livello di ciò che fa il codice, suddividendolo in blocchi più piccoli e spiegando ogni pezzo in un linguaggio semplice. Può anche fornire spiegazioni più dettagliate di specifiche righe o blocchi di codice, spiegando la funzione e lo scopo di ciascun elemento.

Image b985d74b8bbb

Image afcb7f4445c5

Caratteristica: tradurre in un altro linguaggio di programmazione

GitHub Copilot Labs può assistere gli sviluppatori in vari modi, inclusa la capacità di tradurre il codice da un linguaggio di programmazione a un altro.

Questa funzionalità può essere particolarmente utile per gli sviluppatori che lavorano con codice scritto in un linguaggio con cui non hanno familiarità. Può anche essere utile per gli sviluppatori che devono trasferire il codice da una lingua all'altra per un progetto o un'applicazione specifici.

Questo ha funzionato molto bene per piccole funzioni, ma non dovresti ancora fidarti del sistema con grandi pezzi di codice piuttosto complessi.

Image 5ad27f2c7a1b

Caratteristica: documentazione del codice

La documentazione del codice è un aspetto importante dello sviluppo del software, poiché aiuta a spiegare lo scopo e la funzionalità del codice ad altri sviluppatori, nonché ai futuri sviluppatori che potrebbero aver bisogno di lavorare con la base di codice. Una buona documentazione del codice può rendere più semplice per gli altri la comprensione e la manutenzione del codice e può anche fungere da riferimento per gli sviluppatori che potrebbero aver bisogno di apportare modifiche o aggiunte al codice in futuro.

Github Copilot Labs offre una funzionalità di documentazione del codice che consente agli sviluppatori di documentare facilmente righe di codice selezionate all'interno del loro repository. Questo può essere fatto direttamente dall'editor dei "pennelli", con l'ulteriore comodità di poter vedere la documentazione accanto al codice stesso.

Per utilizzare la funzionalità di documentazione del codice in Github Copilot Labs, seleziona semplicemente le righe di codice che desideri documentare e fai clic sul pulsante "Documento". Questo genererà commenti di codice sopra le righe selezionate.

L'ho provato con il codice TypeScript e non ha funzionato affatto. Non solo la documentazione è stata scritta come commenti al codice (invece che come JSDoc), ma sono state anche copiate alcune parti della funzione. Ciò significa che ho dovuto ripulire il codice dopo aver usato il pennello. La documentazione stessa era corretta.

Image 757e7ff37c76

Caratteristica: ripulire il codice

Mantenere un codice pulito e organizzato è un aspetto importante dello sviluppo del software, in quanto può aiutare a migliorare la leggibilità e la manutenibilità della base di codice. Tuttavia, man mano che una base di codice cresce e si evolve, può essere facile che il codice diventi confuso e difficile da capire.
Github Copilot Labs offre una funzionalità che consente agli sviluppatori di ripulire facilmente il proprio codice e renderlo più organizzato e leggibile.

Image 2ada9b442c42

Image 5c8cc6ebf423

La funzionalità "Pulisci" consente agli sviluppatori di semplificare il proprio codice senza modificarne la semantica, applicando automaticamente una serie di regole di formattazione e stile del codice.

Per utilizzare la funzione, seleziona semplicemente le righe di codice che desideri pulire e fai clic sul pulsante "Pulisci". Github Copilot Labs tenterà quindi di semplificare il tuo codice. Questo ha funzionato bene nei miei test.

La funzione "Pulisci codice" può essere uno strumento prezioso per gli sviluppatori che desiderano rendere il proprio codice più facile da leggere e comprendere, senza doverlo riformattare manualmente. Può anche aiutare a migliorare le tue abilità di codice, poiché l'estensione potrebbe generare un codice più semplice a cui non avevi pensato.

Caratteristica: correzione di bug

Questo ha funzionato bene anche nei miei semplici test. Ho definito una riassegnazione non valida di una variabile e Github Copilot Labs ha modificato il codice e definito la variabile come mutabile.

Questo risultato è discutibile, ovviamente. Da un lato, il bug è stato "risolto", nel senso che la riassegnazione non valida non è più avvenuta.

Ma cosa succede se il valore deve essere effettivamente immutabile? In questo caso, la riassegnazione in primo luogo era sbagliata.

Sembra che l'estensione tenti di preservare quanto più codice possibile. Questa funzione non è assolutamente pronta per un uso reale al momento della scrittura. Migliorerà nei prossimi mesi e anni. Ma per ora, dovresti trattarlo come un esperimento per vedere come potrebbe essere il futuro.

Image 4b40451adf91

Image 5d95fbe15dbc