Analise as funcionalidades de desenvolvimento de código da GitHub Copilot
Visual Studio Code implementa GitHub Copilot usando duas extensões, GitHub Copilot e GitHub Copilot Chat. Essas extensões aumentam a produtividade do desenvolvedor gerando sugestões que estendem ou melhoram seus aplicativos. Cada extensão fornece um conjunto de recursos que ajudam você a desenvolver código de forma mais eficiente:
- A extensão GitHub Copilot gera sugestões de completamento de código usando o código que insere no editor ou os seus comentários de código.
- A extensão GitHub Copilot Chat gera sugestões de código baseadas em interações de chat ou ações inteligentes que atuam sobre código selecionado.
Nota
Neste módulo, utilizas as extensões GitHub Copilot para desenvolver novas funcionalidades e aplicações de código. Existem dois módulos separados que cobrem o uso de GitHub Copilot para criar testes unitários e melhorar o código existente.
GitHub Copilot ferramentas no Visual Studio Code
Visual Studio Code oferece acesso fácil às seguintes funcionalidades de GitHub Copilot e GitHub Copilot Chat:
- Completudes de linhas de código: Use completões de linhas de código para escrever código de forma mais eficiente.
- Chat inline: Inicia uma conversa por chat inline diretamente do editor para pedir ajuda enquanto estás a programar.
- Vista de chat: Abra um assistente de IA ao lado que o possa ajudar a qualquer momento.
- Conversa rápida: Faça uma pergunta rápida e volte ao que está a fazer.
- Ações inteligentes: Execute ações inteligentes para completar certas tarefas sem sequer ter de escrever um prompt.
As extensões GitHub Copilot trazem o poder da IA para o ambiente Visual Studio Code.
Gerar código usando a completação de linhas de código com o GitHub Copilot
GitHub Copilot gera completações de linhas de código à medida que introduz o código. O código que já está na tua aplicação fornece contexto que GitHub Copilot usa para gerar sugestões precisas. Por exemplo, suponha que você esteja trabalhando em uma classe que processa os gastos do cliente. A classe usa uma lista que contém despesas para todos os clientes. Você precisa criar um método que retorna a soma de todos os gastos. Se começares a introduzir a assinatura do método, GitHub Copilot gera uma sugestão que completa a linha de código.
Se estiveres satisfeito com a sugestão, carrega na tecla Tab ou seleciona Aceitar. As autocompleções poupam-lhe tempo e ajudam-no a escrever código com precisão, fornecendo os nomes das variáveis e outros elementos de código.
Você também pode usar completações de linha de código para exibir diferentes opções para construir seu código. Por exemplo, se começar a escrever a instrução de chamada de um método, GitHub Copilot fornece sugestões que implementam as várias sobrecargas de método. Pode percorrer as sugestões e aceitar a opção que corresponda à sua intenção. Também pode rejeitar todas as sugestões. Este processo ajuda-o a explorar rapidamente diferentes estilos e técnicas de codificação.
GitHub Copilot também gera sugestões de completação de linhas de código a partir de comentários de código. Por exemplo, se escreveres um comentário que descreve um método que queres criar, GitHub Copilot gera uma sugestão para a assinatura e implementação do método.
Repare que o preenchimento automático de código sugerido recolhe informações do seu código atual e do comentário que descreve o método.
Os desenvolvedores usam completações de código para acelerar o desenvolvimento de uma estrutura de código inicial.
Gerar código usando GitHub Copilot Chat
GitHub Copilot Chat ajuda-te a criar código usando interfaces de chat e ações inteligentes. Por exemplo, se introduzir um prompt que peça ao GitHub Copilot Chat para criar um novo método, GitHub Copilot fornece sugestões para uma ou mais assinaturas de métodos e implementações. Rever e, em seguida, aceitar ou descartar as sugestões ajuda a criar uma versão inicial do seu código de forma mais rápida e precisa.
Nota
A extensão GitHub Copilot Chat para Visual Studio Code inclui uma interface de chat que processa as entradas dos utilizadores. Este treino utiliza os termos pergunta e prompt ao referir-se ao input que fornece durante uma sessão de chat.
GitHub Copilot Chat é especialmente útil quando precisa de desenvolver código que implemente recursos desconhecidos, como uma nova biblioteca, framework ou API. Quando submete um prompt que descreve as suas necessidades, o GitHub Copilot Chat gera sugestões que mostram como alcançar o seu objetivo. Analisar as sugestões também pode ensiná-lo a implementar os novos recursos.
Fornecer GitHub Copilot Chat com prompts ou perguntas que tenham um âmbito e intenção claros melhora as respostas geradas. Você pode fazer perguntas que forneçam contexto e descrevam seus requisitos em um estilo de conversa. O GitHub Copilot Chat utiliza a informação que fornece para gerar sugestões de código que respondam às suas necessidades e correspondam ao seu estilo de programação.
Você pode usar participantes do bate-papo, comandos de barra e variáveis de bate-papo para esclarecer o contexto de seus prompts.
- Os participantes do chat, como
@workspaceou@terminal, ajudam GitHub Copilot Chat a compreender o contexto da sua pergunta. - Comandos de barra, como
/explainou/new, ajudam GitHub Copilot Chat a compreender a intenção ou o propósito da sua pergunta. - Variáveis do chat, como
#fileou#editor, ajudam o Copilot Chat a focar em algo específico ao considerar o contexto mais amplo da sua pergunta.
A utilização destes descritores especializados ajuda GitHub Copilot Chat a gerar respostas mais precisas e úteis.
Você pode combinar participantes do bate-papo com comandos de barra para executar ações específicas. Por exemplo, pode criar uma nova aplicação de consola C# usando o seguinte prompt: @workspace /new console application in C#. Este prompt inclui um participante do chat (@workspace) e um comando de barra (/new) para ajudar GitHub Copilot Chat a realizar a tarefa pretendida.
GitHub Copilot pode apoiar espaços de trabalho mais complexos. Por exemplo, o prompt seguinte cria o espaço de trabalho para uma aplicação Node.js que utiliza o framework Express, o motor de templates Pug e o TypeScript: @workspace /new Node.js Express Pug TypeScript.
Gerar código com GitHub Copilot Chat usando a visualização Chat
A vista de chat no Visual Studio Code dá acesso a um assistente de IA que o ajuda a desenvolver código. Pode fazer perguntas e obter ajuda do seu assistente de IA sem sair do ambiente do Visual Studio Code. A vista Chat fornece assistência quando está a desenvolver código e quando está a explorar abordagens para resolver problemas de codificação difíceis. Você também pode usar o modo de exibição Bate-papo para fazer perguntas sobre o código existente, obter ajuda com erros ou lógica de codificação e obter informações sobre como usar recursos do projeto. A vista Chat pode ajudá-lo a aprender novas técnicas de codificação, explorar diferentes estilos de codificação e melhorar as suas competências de codificação.
A vista de Chat abre-se num painel próprio à direita do editor de código do Visual Studio Code. Para abrir a vista do Chat, selecione Chat na barra de título Visual Studio Code ou use o atalho de teclado Ctrl+Alt+I.
Se precisares de mais espaço no ecrã no Visual Studio Code, podes abrir a vista de Chat numa janela separada selecionando Abrir Chat em Nova Janela no menu de contexto da vista de Chat.
GitHub Copilot Chat oferece resultados ricos e interativos que incluem os seguintes elementos:
- Texto simples. Por exemplo, para fornecer uma resposta em linguagem natural a uma pergunta.
- Imagens. Por exemplo, para mostrar um diagrama ou uma captura de tela.
- Botões. Por exemplo, para acionar uma ação.
- Referências. Por exemplo, URIs (Uniform Resource Identifiers) onde você pode encontrar mais informações.
- Árvores de ficheiros. Por exemplo, para mostrar uma visualização de espaço de trabalho quando um participante do bate-papo propõe criar um novo espaço de trabalho.
O exemplo a seguir mostra a resposta para um prompt usado para criar um aplicativo Express. GitHub Copilot Chat fornece uma explicação simples em texto, uma vista em árvore que mostra uma estrutura de espaço de trabalho sugerida e um botão que pode ser usado para criar o novo espaço de trabalho.
GitHub Copilot mantém um registo da tua conversa. O histórico é usado para melhorar as respostas e perguntas de seguimento sugeridas pelo GitHub Copilot Chat.
Gerenciar blocos de código na visualização Bate-papo
Dependendo da sua pergunta, GitHub Copilot Chat pode devolver o código-fonte na resposta. O código-fonte é exibido como um bloco de código, e você pode gerenciar o código de algumas maneiras diferentes.
Se você passar o ponteiro do mouse sobre o bloco de código, as opções para gerenciar o bloco de código serão exibidas. As suas opções iniciais são Aplicar, Inserir (Ctrl+Enter) e Copiar.
O botão Mais Ações (...) mostra as opções para Inserir no Terminal (Ctrl+Alt+Enter) e Inserir no Novo Ficheiro.
Se GitHub Copilot Chat detetar que um bloco de código contém um comando, pode executá-lo diretamente no terminal integrado com Insert no Terminal (Ctrl+Alt+Enter). Esta opção cria ou abre o terminal ativo e insere o texto do comando, pronto para ser executado.
Geração de código com o GitHub Copilot Chat usando chat em linha
A interface de bate-papo em linha fornece acesso a recursos poderosos de IA, mantendo você focado em seu código. Quando trabalhas no editor de código, podes abrir o chat inline pressionando Ctrl+I no teclado.
Você pode usar o bate-papo embutido das seguintes maneiras:
- Para fazer perguntas sobre o código existente.
- Para modificar ou substituir o código existente.
- Para gerar um novo código.
Criar um novo recurso usando o bate-papo embutido
A interface de chat em linha pode ser usada para desenvolver novos recursos de código. Por exemplo, você pode usar o bate-papo embutido para criar um novo componente de interface do usuário, um novo ponto de extremidade de API ou um novo pipeline de processamento de dados.
Você pode criar um novo recurso de código usando o chat embutido concluindo as seguintes etapas:
Selecione o código no editor.
Abra a interface do chat inline pressionando Ctrl+I no teclado.
Insira um prompt que descreva o recurso que você deseja criar.
Revise as sugestões fornecidas pelo GitHub Copilot Chat e aperfeiçoe o seu prompt, se necessário.
Quando estiver satisfeito, aceite uma sugestão.
Aqui está um exemplo que demonstra como criar um novo método usando o bate-papo embutido:
Crie expressões regulares usando o bate-papo embutido
Expressões regulares são padrões usados para corresponder combinações de caracteres em cadeias de caracteres. Alguns desenvolvedores acham as expressões regulares difíceis de escrever porque podem ser complexas e difíceis de entender.
A interface de chat em linha pode ser usada para gerar expressões regulares de forma rápida e precisa. Por exemplo, você pode usar o bate-papo embutido para gerar expressões regulares para validar endereços de e-mail, números de telefone, códigos postais e outros padrões de dados.
Você pode criar uma expressão regular usando o bate-papo embutido concluindo as seguintes etapas:
Selecione o código no editor.
Abra a interface de chat inline pressionando Ctrl + I no teclado.
Insira um prompt que descreva o padrão de dados que você precisa validar.
Revise as sugestões fornecidas pelo GitHub Copilot Chat e, quando estiver satisfeito, aceite uma sugestão.
Aqui está um exemplo que demonstra como criar uma expressão regular para endereços de e-mail usando o bate-papo embutido:
É sempre importante rever as respostas geradas pelo GitHub Copilot Chat.
GitHub Copilot Chat sugere que a seguinte expressão regular pode ser usada para validar endereços de email: ^[a-zA-Z0-9_.+-]+@[a-zA-Z0-9-]+\.[a-zA-Z0-9-.]+$.
Vamos dedicar um minuto para avaliar a expressão regular sugerida.
^: Este símbolo indica o início de uma linha. O endereço de e-mail deve começar aqui.
[a-zA-Z0-9_.+-]+: Esta parte da expressão corresponde a um ou mais (+) dos caracteres dentro dos parênteses quadrados ([]). Os caracteres podem ser minúsculos (a-z), maiúsculos (A-Z), numéricos (0-9) ou caracteres especiais como sublinhado (_), ponto (.), mais (+) ou hífen (-).
@: Esta parte da expressão é o símbolo "at" (@). É um caractere literal no endereço de e-mail.
[a-zA-Z0-9-]+: Esta parte da expressão é semelhante à primeira, mas é para a parte do nome de domínio do email. Pode conter um ou mais caracteres minúsculos, maiúsculos, numéricos ou hífen (-).
\.: Esta parte da expressão é um carácter literal de ponto (.). Ele separa o nome de domínio da extensão de domínio.
[a-zA-Z0-9-.]+: Esta parte da expressão corresponde à extensão do domínio. Pode conter um ou mais caracteres minúsculos, maiúsculos, numéricos, hífen (-) ou ponto (.)
$: Este símbolo indica o fim de uma linha. O endereço de e-mail deve terminar aqui.
No geral, esta expressão regular é um bom ponto de partida para validar endereços de e-mail, mas tem algumas limitações e pode não abranger todos os formatos de e-mail válidos. Você pode considerar o uso de padrões mais abrangentes ou até mesmo bibliotecas de validação de e-mail dedicadas para aplicativos críticos.
Resumo
As extensões GitHub Copilot ajudam os programadores a escrever código mais rápido e com menos erros. A extensão GitHub Copilot gera sugestões de completamento de código usando o código que insere no editor ou os seus comentários de código. A extensão GitHub Copilot Chat gera sugestões de código baseadas em interações de chat ou ações inteligentes que atuam sobre código selecionado.