GitHub Copilot: 6 Truques para ter uma Maior Produtividade!
- #Azure
- #GitHub Copilot
Imagine ter um parceiro de programação que conhece todas as linguagens, nunca cansa e está disponível 24 horas por dia. É exatamente isso que o GitHub Copilot oferece - um assistente de IA que transforma a forma como desenvolvemos software.
- Neste artigo, você vai descobrir técnicas práticas e pouco conhecidas que os desenvolvedores mais experientes estão usando para:
- Reduzir em até 50% o tempo gasto em tarefas repetitivas;
- Escrever código mais limpo e eficiente;
- Evitar erros comuns;
- Aprender novas tecnologias enquanto codifica.
Se você quer elevar seu nível como desenvolvedor e produzir mais em menos tempo, continue lendo. Vamos revelar os segredos para extrair o máximo potencial dessa ferramenta revolucionária.
Pronto para transformar sua forma de programar? Vamos começar!
Neste artigo utilizaremos as seguintes linguagens e frameworks para exemplificação:
- Angular | Typescript
- .Net | C#
- Python
1. Use Comentários Descritivos para Códigos Mais Precisos:
O Copilot entende contextos a partir dos seus comentários. Quanto mais detalhado, melhor o resultado.
Exemplo:
#python:
# Crie uma função que calcula o IMC (Índice de Massa Corporal)
# Recebe peso (kg) e altura (m), retorna o valor e a classificação
def calculate_bmi(weight, height):
bmi = weight / (height ** 2)
if bmi < 18.5:
return bmi, "Abaixo do peso"
elif 18.5 <= bmi < 25:
return bmi, "Peso normal"
# ... (o Copilot completa o resto!)
Você consegue utilizar o Copilot através da extensão da ferramenta no VS Code:
Codigo:
Solicitando alterações e implementações:
Código final com o Copilot:
Se você estiver "codando" em um idioma, lembre-se de pedir no prompt para que mantenha o idioma original, altere apenas o idioma da função, variável, string, etc.
Para aceitar as correções, apenas clique em "Accept", e salve seu código, ou caso seu "autosave" no VS Code estiver ativado:
Dica: Experimente prompts como:
- "Escreva uma função que valide um CPF em Python."
- "Crie um hook React para buscar dados de uma API."
2. Gere Código a Partir de Exemplos (Few-Shot Prompting):
O GitHub Copilot usa uma técnica chamada "Few-Shot Prompting", onde ele analisa exemplos de código que você fornece e gera soluções seguindo o mesmo padrão. É como ensinar o Copilot a pensar como você!
Como Funciona?
- Você mostra 2-3 exemplos do que precisa.
- O Copilot identifica o padrão.
- Ele completa o próximo trecho automaticamente.
Mostre exemplos e peça ao Copilot para seguir o padrão.
//javascript:
// Exemplo 1: Função que soma dois números
function sum(a, b) { return a + b; }
// Exemplo 2: Função que subtrai dois números
function subtract(a, b) { return a - b; }
// Agora crie uma função que multiplica dois números
// (O Copilot sugerirá automaticamente!)
3. Refatore Código com Comandos Diretos
Peça otimizações, melhorias de legibilidade ou conversão entre linguagens.
Exemplo:
#python:
# Refatore este código para usar list comprehension
numbers = [1, 2, 3, 4, 5]
squared = []
for num in numbers:
squared.append(num ** 2)
# O Copilot pode sugerir:
squared = [num ** 2 for num in numbers]
Experimente:
- "Converta este SQL em uma query do MongoDB."
- "Melhore a performance deste loop em JavaScript."
4. Como Corrigir Código com o GitHub Copilot (Exemplo Angular + .NET):
BackEnd (.NET 6) - Controller com Rota Quebrada:
// csharp:
[ApiController]
public class ProductsController : ControllerBase
{
[HttpGet("getproducts")] //Rota mal formatada (aspas erradas)
public List<Product> GetProducts() //Sem tratamento de erro
{
return _db.Products.ToList(); //Nenhum StatusCode definido
}
}
FrontEnd (Angular) - Chamada HTTP com Problemas:
// typescript
getProducts() {
this.http.get("http://localhost:5000/getproducts") //URL errada (falta /api)
.subscribe(data => this.products = data); //Sem tratamento de erro
}
Corrigindo com o GitHub Copilot - Passo a Passo:
.NET | C# (CSharp)
Adicione um comentário descrevendo o problema
// Corrija: Rota mal formatada e adicione tratamento de erros
O Copilot vai sugerir:
// csharp:
[HttpGet("api/products")] //Padrão REST
public IActionResult GetProducts()
{
try
{
return Ok(_db.Products.ToList()); //Retorno padronizado
}
catch (Exception ex)
{
return StatusCode(500, ex.Message); //Tratamento de erro
}
}
Angular | Typescript:
Peça para corrigir a chamada HTTP:
// Corrija: URL incorreta e adicione tratamento de erro
O Copilot vai sugerir:
getProducts() {
this.http.get<Product[]>("http://localhost:5000/api/products") //URL correta
.subscribe({
next: (data) => this.products = data,
error: (err) => console.error("Erro ao carregar produtos", err) //Tratamento
});
}
5. Gere Testes Automáticos em Segundos
# python:
# Escreva um teste pytest para a função calculate_bmi
def test_calculate_bmi():
assert calculate_bmi(70, 1.75)[0] == 22.86
assert calculate_bmi(70, 1.75)[1] == "Peso normal"
# ... (o Copilot completa outros casos de teste!)
6. Integre com Azure AI para IA Generativa Avançada:
Combine o Copilot com Azure OpenAI para ir além:
- Gere documentação automaticamente.
- Crie scripts complexos com ajuda do GPT-4.
- Traduza código entre linguagens.
Exemplo de uso com Azure AI:
# python:
from openai import AzureOpenAI
client = AzureOpenAI(api_key="SUA_CHAVE")
response = client.chat.completions.create(
model="gpt-4",
messages=[{"role": "user", "content": "Explique o que é o GitHub Copilot em 1 parágrafo."}]
)
print(response.choices[0].message.content)
Domine o GitHub Copilot e Codifique como um Profissional!
Com o GitHub Copilot, você pode:
- Reduzir tempo em tarefas repetitivas;
- Escrever código mais limpo e eficiente;
- Gerar testes e documentação em segundos.
- Corrigir problemas no código, sendo uma ferramenta ideia para desenvolvedores iniciantes.
- Escrever código mais rápido e com menos erros.
- Corrigir bugs em segundos usando comentários simples.
- Aprender boas práticas enquanto programa.
Basta descrever o que precisa e deixar o Copilot ajudar. Quanto mais você usa, mais eficiente fica!
Links:
- GitHub Copilot - https://docs.github.com/pt/copilot
- Azure AI Foundry - https://learn.microsoft.com/pt-br/azure/ai-foundry/
- Azure OpenAI Service - https://learn.microsoft.com/pt-br/azure/ai-services/openai/
- Exemplos e tutoriais de IA em código do Windows - https://learn.microsoft.com/pt-br/windows/ai/samples/
- Exemplos de Código no GitHub - https://github.com/Azure/azure-openai-samples
Links Pessoais:
Qual truque você vai testar primeiro? Comente abaixo!