Esaminare le funzionalità di completamento del codice di GitHub Copilot

Completato

GitHub Copilot fornisce suggerimenti di tipo completamento automatico durante l'immissione del codice. Quando si eseguono le azioni seguenti, si ricevono suggerimenti di tipo completamento automatico:

  • Immettere una riga di codice parziale o completa nell'editor.
  • Immettere un commento di codice parziale o completo nell'editor.
  • Immettere una riga di codice vuota nell'editor.

Generare un suggerimento di completamento automatico

GitHub Copilot accelera lo sviluppo di app suggerendo completamenti del codice in base al codice scritto.

Si supponga, ad esempio, di voler creare un metodo C# denominato addInt che restituisca la somma di due interi. Se si inizia a digitare la firma del metodo, GitHub Copilot suggerisce il codice che ritiene di voler creare.

Screenshot che mostra il completamento automatico per la somma di due numeri.

Il completamento automatico suggerito viene visualizzato senza evidenziazione della sintassi colorata. Ciò consente di distinguere il completamento automatico dal codice esistente. È possibile accettare il codice suggerito premendo il tasto Tab.

Screenshot che mostra il suggerimento di completamento automatico accettato.

È possibile premere ESC per ignorare un suggerimento.

L'esempio addInt è un po' semplicistico, quindi ci si potrebbe chiedere come GitHub Copilot fa con qualcosa di più complesso.

Si supponga di voler creare un metodo che accetti un elenco di numeri e restituisca la somma dei numeri primi contenuti nell'elenco. È possibile denominare il metodo addPrimeNumbersInNumericList. Quando si inizia a digitare la firma del metodo, GitHub Copilot genera automaticamente un suggerimento. Per esempio:

Screenshot che mostra il completamento automatico per un metodo che aggiunge i numeri primi in un elenco.

È importante rivedere i suggerimenti prima di accettarli. Il completamento automatico ha un aspetto ottimale, quindi è possibile accettare il suggerimento premendo TAB.

Continuiamo lo scenario un po' più avanti.

Dopo aver unito il suggerimento al codice, si noterà che il isPrime metodo è sottolineato in rosso. Questo perché il isPrime metodo non esiste ancora nel codice.

Screenshot che mostra il metodo addPrimeNumbersInNumericList unito al codice con isPrime sottolineato in rosso.

GitHub Copilot è sottoposto a training per seguire le procedure consigliate, che includono la suddivisione di problemi complessi in parti più piccole e gestibili. In questo caso, GitHub Copilot suggerisce di creare un metodo separato isPrime per verificare se un numero è primo.

GitHub Copilot è pronto per suggerire un frammento di codice per il isPrime metodo . Quando si immette una riga vuota sotto il addPrimeNumbersInNumericList metodo, GitHub Copilot suggerisce un isPrime metodo che è possibile usare.

Screenshot che mostra il completamento automatico per l'aggiunta del metodo isPrime.

I suggerimenti di completamento automatico accelerano il processo di sviluppo fornendo frammenti di codice. Ma cosa succede se i suggerimenti non sono proprio quello di cui hai bisogno? GitHub Copilot offre un'interfaccia per la gestione dei suggerimenti di completamento automatico.

Gestire i suggerimenti di completamento automatico

Quando GitHub Copilot suggerisce un completamento automatico, fornisce anche un'interfaccia per la gestione dei suggerimenti. È possibile accettare un suggerimento, esaminare altri suggerimenti o ignorare i suggerimenti.

Quando si passa il puntatore del mouse su un completamento automatico suggerito, vengono visualizzate diverse opzioni per la gestione dei suggerimenti.

Screenshot che mostra l'opzione

L'interfaccia predefinita per la gestione dei suggerimenti include le opzioni seguenti:

  • Accettare il suggerimento (completo) selezionando Accetta. È anche possibile accettare il suggerimento premendo il tasto Tab.
  • Accettare parzialmente il suggerimento selezionando Accetta word. È anche possibile accettare parzialmente un suggerimento premendo i Ctrl + > tasti.
  • Visualizzare suggerimenti alternativi selezionando > o <. È anche possibile visualizzare i suggerimenti alternativi premendo i Alt + ] tasti o .Alt + [

Selezionando l'opzione Accept Word accetta la parola successiva in un suggerimento. Ciò è utile quando si vuole accettare parte del suggerimento e quindi continuare a digitare il proprio codice. Ad esempio, è possibile accettare la prima parola del suggerimento del isPrime metodo.

Screenshot che mostra l'opzione

Continua a selezionare Accetta parola finché non hai accettato tutta la parte del suggerimento che desideri.

Se si seleziona l'icona con i puntini di sospensione (...) a destra del pulsante Accept Word, vengono fornite le opzioni Accept Line, Always Showing Toolbar e Open Completions Panel.

Screenshot che mostra le opzioni aggiuntive

Se si seleziona l'opzione Accetta riga, viene accettata un'intera riga del suggerimento. Se si seleziona l'opzione Mostra sempre barra degli strumenti, la barra degli strumenti rimane visibile quando si usano i tasti di scelta rapida per gestire i suggerimenti di completamento automatico. Se si seleziona l'opzione Apri pannello completamenti , si apre la scheda Completamento copilot di GitHub. La visualizzazione di più suggerimenti tramite la scheda Completamento copilot di GitHub è illustrata alla fine di questa unità.

Generare suggerimenti di codice dai commenti

Oltre a suggerire un completamento automatico basato sul codice, GitHub Copilot può usare i commenti di codice per suggerire frammenti di codice. Usare frasi in linguaggio naturale per descrivere il codice che si vuole creare. Ciò consente a Copilot di proporre suggerimenti di completamento automatico che soddisfano requisiti specifici. Ad esempio, è possibile specificare il tipo di algoritmo da usare in un calcolo o quali metodi e proprietà si desidera aggiungere a una classe.

Torniamo all'esempio di numero primo. A questo punto, si dispone del codice seguente:

Screenshot che mostra il codice corrente per l'esempio di numero primo.

I addPrimeNumbersInNumericList metodi e isPrime sembrano essere completi. Tuttavia, è comunque necessario un elenco di numeri che possono essere usati come argomento quando si chiama il addPrimeNumbersInNumericList metodo . È possibile scrivere un commento che descrive l'elenco di numeri desiderati. Ad esempio, un elenco di 100 numeri casuali compresi tra 1 e 1000.

Quando si inizia a immettere il commento, GitHub Copilot suggerisce un completamento automatico che completa automaticamente il commento. GitHub Copilot usa il codice circostante per migliorare i suggerimenti. Ad esempio, se si inizia a immettere il commento // create, GitHub Copilot usa il codice circostante per stimare ciò che si vuole creare. In questo caso GitHub Copilot usa il addPrimeNumbersInNumericList metodo per stimare che si vuole creare a list of numbers.

Screenshot che mostra l'aggiunta della parola

Man mano che si continua a scrivere il commento, GitHub Copilot aggiorna il suggerimento di completamento automatico. Quando si è pronti ad accettare il suggerimento, selezionare Accetta o premere TAB.

Screenshot che mostra le parole

Quando si crea una nuova riga di codice dopo il commento, GitHub Copilot inizia a generare un frammento di codice in base al commento e al codice esistente.

Screenshot che mostra GitHub Copilot che aggiunge la prima riga di codice.

Accettare ognuno dei suggerimenti visualizzati.

Screenshot che mostra GitHub Copilot che continua ad aggiungere righe di codice.

Se GitHub Copilot non è terminato, genera un altro suggerimento da accettare.

Screenshot che mostra GitHub Copilot che completa l'elenco dei numeri.

Se si immette una nuova riga di codice al termine del frammento di codice, GitHub Copilot genera un altro suggerimenti di completamento automatico in base ai requisiti del progetto di codice. In questo caso, GitHub Copilot suggerisce una riga di codice che chiama il addPrimeNumbersInNumericList metodo , passando l'elenco denominato numbers.

Screenshot che mostra GitHub Copilot che suggerisce una chiamata di metodo.

Visualizzare più suggerimenti usando la scheda Suggerimenti di GitHub Copilot

Se non si è soddisfatti dei suggerimenti iniziali di completamento automatico, GitHub Copilot può aprire una nuova scheda nell'editor con altre opzioni. È possibile esaminare l'elenco più ampio di suggerimenti per trovare una corrispondenza migliore e quindi selezionarlo.

Per illustrare questa funzionalità, torniamo a una fase precedente dell'esempio di numeri primi.

Si supponga di dover comunque creare il isPrime metodo . Quando si immette una riga vuota sotto il addPrimeNumbersInNumericList metodo , GitHub Copilot suggerisce un isPrime metodo per l'utente. Si tratta dello stesso processo usato in precedenza. Si supponga tuttavia di non essere soddisfatti dei suggerimenti offerti da GitHub Copilot e che si vogliano visualizzare altre opzioni.

Per aprire la scheda Suggerimenti di GitHub Copilot e visualizzare altri suggerimenti, premere i Ctrl + Enter tasti. È anche possibile aprire il menu Altre azioni e selezionare Apri pannello completamenti.

Screenshot che mostra la scheda Suggerimenti di GitHub Copilot.

La scheda Suggerimenti di GitHub Copilot visualizza fino a 10 altri suggerimenti. Esaminare i suggerimenti per trovare quello più adatto alle proprie esigenze.

Per accettare un suggerimento, selezionare l'etichetta Accept selection sotto il suggerimento. Ad esempio, selezionare l'etichetta Accept suggestion 1 sotto il primo suggerimento.

Per rifiutare tutti i suggerimenti, chiudere la scheda.

Riassunto

I suggerimenti di completamento automatico consentono di scrivere codice in modo più efficiente e accurato. GitHub Copilot fornisce suggerimenti di completamento automatico durante l'immissione del codice. È possibile generare un suggerimento di completamento automatico immettendo una riga di codice parziale o completa, un commento di codice parziale o completo o una riga di codice vuota. È possibile accettare un suggerimento premendo TAB oppure ignorare i suggerimenti premendo ESC. È possibile gestire i suggerimenti usando la barra degli strumenti visualizzata quando si passa il puntatore del mouse su un suggerimento. La barra degli strumenti consente di esaminare suggerimenti alternativi, accettare un suggerimento, accettare una parola di un suggerimento o aprire la scheda Completamento di GitHub Copilot per visualizzare altri suggerimenti.