Este artigo o guiará pelas etapas de instalação e configuração do GitHub Copilot no VS Code. Você aprenderá como usar o Copilot para acelerar o processo de codificação.
Requisitos
Para usar o GitHub Copilot, você precisa ter uma conta do GitHub. Se ainda não tiver uma, você pode registrar uma conta no site oficial.
Verifique se você está conectado à sua conta do GitHub antes de se inscrever no GitHub Copilot. O serviço vem com um teste gratuito de 30 dias, após o qual você deve se inscrever em um dos planos pagos.
Se você não tem intenção de assinar um plano pago, certifique-se de cancelar o GitHub Copilot antes do final da avaliação para evitar cobranças.
Por fim, você precisará ter o Visual Studio Code instalado em sua máquina local. Para instalar o Visual Studio Code, visite a página oficial de downloads do VS Code.
Instalando a extensão GitHub Copilot
Comece iniciando seu editor de código do Visual Studio. A seguir, clique no Extensões aba. Use a caixa de pesquisa para pesquisar GitHub copiloto. Instale e ative a extensão (tem mais de 5 milhões de downloads no momento em que escrevo isso):
Uma vez totalmente ativo, um prompt aparecerá solicitando que você entre no GitHub. Clique no botão para entrar. O processo de autenticação será rápido porque você já está conectado ao GitHub e ao GitHub Copilot. Se o processo for bem-sucedido, você encontrará o ícone Copilot no canto inferior direito do VS Code.
Observe que o GitHub Copilot é um serviço pago (US$ 10/mês no momento da redação), mas há uma avaliação gratuita de 30 dias.
Faça perguntas técnicas ao copiloto
Embora o Copilot seja conhecido por ser um assistente de codificação, você pode fazer perguntas técnicas diretamente. Isso é perfeito se você estiver estudando para uma entrevista técnica e quiser obter rapidamente respostas para perguntas comuns em entrevistas.
Para fazer uma pergunta ao GitHub Copilot, coloque sua pergunta em um comentário precedido por :q:
1 |
// q: What is a class in object-oriented programming?
|
Ao visualizar uma sugestão do Copilot (na cor cinza), clique no botão aba tecla em seu teclado para aceitá-la como sua resposta. A resposta é precedida por :a. A tecla tab funciona em computadores Windows e Mac.
Você também pode perguntar especificamente sobre uma dessas respostas (ou seja, obter mais informações sobre a resposta). O Copilot descobrirá o que você está prestes a perguntar e preencherá automaticamente a pergunta para você.
Usando o Copilot com HTML e CSS
Agora vamos voltar nossa atenção para a codificação, começando com um exemplo de HTML. O Copilot ajudará a acelerar o processo de escrita de HTML. Vamos ver como.
Crie dois arquivos HTML em seu projeto. Os arquivos devem ser nomeados exemplo1.html e exemplo2.html. Em seguida, abra exemplo1.html arquivo no VS Code.
Comece digitando o declaração de tipo de documento. Ao clicar em Enter no teclado, o Copilot já sabe que o tag será a próxima tag óbvia a ser adicionada. Então ele sugere a tag (clique na aba para aceitá-la)
Dentro disso, o Copilot sugere que você adicione o então
. Ele fecha o e com certeza,
é sugerido juntamente com um
tag e parágrafo.
Se você deseja gerar um elemento, simplesmente descreva o elemento que deseja gerar em um comentário e pressione Aba. Aqui está um exemplo:
1 |
|
Isso vai gerar um
elemento com texto azul:
1
style="color:blue">This is a blue heading
1 |
|
Você também pode solicitar uma lista com marcadores com o seguinte prompt:
1 |
|
Aqui está o resultado:
1 |
|
2 |
First item
|
3 |
Second item
|
4 |
Third item
|
5 |
|
De acordo com as práticas recomendadas, os estilos sempre devem estar em uma folha de estilo separada. Criar uma estilos.css arquivo na mesma pasta que os arquivos HTML.
O prompt a seguir gerará o elemento link que faz referência à folha de estilo. Escreva o prompt dentro do marcas em HTML:
1 |
|
Esta seria a saída:
1 |
rel="stylesheet" type="text/css" href="style.css">
|
Se o arquivo de folha de estilo estiver dentro de outra pasta, apenas descreva a estrutura do diretório em seu prompt e o Copilot usará o URL correto no href
.
Copiloto Facilitando o Bootstrap
Com um simples prompt “Adicionar Bootstrap”, o Copilot gerará um link que faz referência ao Bootstrap no CDN. Isso é melhor do que ter que pesquisar na web procurando o link atualizado para o Bootstrap.
O Copilot também aplicará as classes Bootstrap em seus elementos. Quando você inicia um
alert
e alert-success
aulas, por isso sugere.
1 |
|
2 |
Success! This alert box represents a successful or positive action
|
3 |
|
Apenas pressione Aba para aceitar a sugestão.
Regex simplificado com copiloto
Se você já lidou com regex, deve saber como pode ser confuso interpretar os padrões. Mas com o Copilot ao seu lado, escrever expressões regulares pode ser muito mais fácil porque você pode pedir ao Copilot para escrever um padrão específico para você.
Por exemplo, se você quisesse uma expressão regular que corresponda a um número de telefone, você teria o seguinte prompt em um arquivo JavaScript:
1 |
// Regex to match the phone number in the format (xxx) xxx-xxxx
|
Se você acertar Digitar no seu teclado, o Copilot fornecerá o regex solicitado:
1 |
var phoneRegex = /^(d{3}) d{3}-d{4}$/; |
Regex é comumente usado para testes. É disso que trata a próxima seção.
Teste de unidade facilitado com o copiloto
O Copilot torna o teste de unidade super fácil. Vejamos um exemplo.
A função a seguir pega uma string, verifica se ela corresponde ao regex, analisa o primeiro e o último valor antes de juntar o número com base no operador:
1 |
function calculator(str) { |
2 |
var regex = /^(d{3}) d{3}-d{4}$/; |
3 |
var match = str.match(regex) |
4 |
|
5 |
var num1 = parseInt(match[1]) |
6 |
var num2 = parseInt(match[3]) |
7 |
|
8 |
switch (match[2]) { |
9 |
case "+": |
10 |
return num1 + num2; |
11 |
case "-": |
12 |
return num1 - num2; |
13 |
case "*": |
14 |
return num1 * num2; |
15 |
case "/": |
16 |
return num1 / num2; |
17 |
default: |
18 |
return "Invalid operator"; |
19 |
}
|
20 |
}
|
Agora você pode dizer ao copiloto para testar essa função com console.log()
usando um prompt como este:
1 |
// test calculator function
|
O Copilot registrará cada uma das operações e fornecerá a saída:
1 |
console.log("1+1") // 2 |
2 |
console.log("1-1") // 0 |
3 |
console.log("1*1") // 1 |
4 |
console.log("1/1") // 1 |
Com o seguinte prompt, o Copilot gerará a codificação para testar a função da unidade:
1 |
// create unit test for calculator function
|
2 |
|
3 |
var assert = require("asser") |
4 |
assert.equal(calculator("1+1"), 2, "calculator can add") |
Ele não apenas gerará o código, mas também sugerirá outras operações para testar além da adição.
Escolhendo entre várias soluções por copiloto
Até agora, vimos o Copilot nos dar sugestões. Mas lembre-se sempre de que nem sempre você precisa escolher a primeira sugestão. Se não gostar da primeira solução, pode sempre escolher outra.
Considere o seguinte prompt:
1 |
// Create a function that takes a string and returns it backwards
|
Comece a tabular para ver as sugestões. Se você não estiver satisfeito com a primeira, passe o mouse sobre o texto e navegue até a próxima solução (usando o > ícone). Depois de chegar a uma solução aceitável, você pode clicar no botão Aceitar botão.
Solicitando o copiloto com várias condições
Ao escrever seu prompt do Copilot, você pode especificar várias condições em seu prompt. Isso é bastante útil se você quiser escrever um programa complexo com regras diferentes.
Digamos que você queira analisar uma lista de despesas com algumas condições. Dentro da função, você pedirá ao Copilot para fazer três coisas em seu prompt (representado pelo comentário):
1 |
function parseExpenses(expenses) { |
2 |
/* Parse the list of expenses and return the array of
|
3 |
triples (date, value, currency). Ignore the lines starting with //.
|
4 |
Parse the date using Date()
|
5 |
*/
|
6 |
}
|
Aqui especificamos três condições: analisar a lista, ignorar comentários e analisar a data. Bater Controle + Enter seu teclado e escolha a melhor solução entre as sugestões.
Uma das sugestões quando testei isso foi a seguinte:
1 |
return expenses.split("n") |
2 |
.filter(line => !line.startsWith("//")) |
3 |
.map(line => line.split(",")) |
4 |
.map(([date, value, currency]) => [new Date(date), Number(value), currency]); |
Isso é muito bom. Mas cuidado, algumas das sugestões que me foram sugeridas usaram line[0]=="/"
para testar quais linhas ignorar. Isso não é bem o que pedimos!
É importante ler cuidadosamente o código gerado pelo Copilot ou qualquer outra ferramenta de IA para garantir que corresponda ao que você espera.
Conclusão
Neste tutorial, vimos os fundamentos do uso do GitHub Copilot. Basta escrever seu prompt em um comentário e pressionar Ctrl + Enter para ver as sugestões.