🚀 Capítulo 15: Ferramentas de IA (Copilot/ChatGPT): O Exterminador do Futuro (Tema: Terminator)

NOTE

Este capítulo utiliza a temática de O Exterminador do Futuro para explicar as IAs de programação. Use os robôs como seus assistentes, mas não deixe que eles pensem por você!


1. 🎯 Objetivo da Aula

Compreender o uso de ferramentas de Inteligência Artificial na programação (GitHub Copilot e ChatGPT), aprendendo como usá-las como assistentes de produtividade e os cuidados necessários para não se tornar dependente delas.

2. 🏢 O Cenário Prático (Seu Desafio)

No filme O Exterminador do Futuro, as máquinas da rede Skynet dominam o mundo. Elas são super inteligentes, aprendem sozinhas e conseguem executar tarefas de forma muito mais rápida que os humanos.

No mundo do desenvolvimento de software, nós não fomos dominados pelas máquinas (ainda!), mas as IAs generativas de código chegaram para mudar as regras do jogo!

  • Antigamente, se você esquecia como fazer uma função em C++, precisava pesquisar no Google e ler vários sites.
  • Hoje, você pode usar ferramentas como o GitHub Copilot ou o ChatGPT para te darem o código pronto em segundos! Essas ferramentas são como robôs assistentes que trabalham para você. Seu desafio é aprender a usá-los sem deixar que eles atrofiem o seu cérebro!

🧠 Fundamentos: A Teoria Traduzida

Existem duas formas principais de usar IA no seu dia a dia de programador:

🤖 1. GitHub Copilot (O Robô Copiloto):

Ele funciona instalado como uma extensão direto no seu VS Code.

  • Você começa a digitar o nome de uma função (ex: void ordenarLista()) e o Copilot adivinha o que você quer fazer e sugere o código inteiro em cinza na tela. Se você gostar, aperta a tecla Tab e ele preenche tudo sozinho!
  • Ele aprende com o padrão do seu próprio código.

💬 2. ChatGPT / Claude / Gemini (O Professor Particular):

São chats onde você conversa com a IA.

  • Você pode fazer perguntas abertas como: “Estou com um bug no meu código C++, você pode me ajudar a encontrar?” ou “Crie uma função que calcule a média de um vetor”.
  • Eles não apenas dão o código, mas explicam o passo a passo de como ele funciona.

4. 📖 Exemplo Guiado: O Perigo da Alucinação

As IAs não são humanos e não “pensam” de verdade. Elas são modelos matemáticos que adivinham qual é a próxima palavra mais provável de aparecer em um texto.

  • Às vezes, a IA inventa uma função que não existe (isso chama-se Alucinação).
  • Se você apenas copiar e colar o código da IA sem ler e sem entender, você pode colocar um bug perigoso no sistema da empresa!
  • Regra de Ouro: Nunca use um código gerado por IA que você não seja capaz de explicar o que ele faz!

5. 🛠️ Prática Obrigatória 1: Usando a IA com Sabedoria

Um estudante de programação está travado em um exercício de faculdade. Ele não sabe como fazer um loop for em C++.

  1. Como ele poderia usar o ChatGPT para ajudá-lo a aprender, em vez de apenas usar para trapacear no exercício? O que ele deveria digitar no chat?

6. 🛠️ Prática Obrigatória 2: O Copiloto no Volante

  1. O GitHub Copilot sugeriu um código gigante para resolver o seu problema. Você apertou Tab e colou. O código funcionou, mas você não faz a menor ideia do que aquelas linhas significam. O que você deve fazer agora antes de dar o commit?

7. 📤 Instruções de Entrega (GitHub Desktop + Microsoft Teams)

  1. Faça o Commit: No GitHub Desktop, digite a mensagem (ex: Finaliza Capítulo 15 GuiaFerramentas) e clique em Commit to main.
  2. Envie para a Nuvem (Push): Clique em Push origin.

8. 📂 Estrutura de Pastas

extra_guia_de_ferramentas/
├── capitulos/
│   └── capitulo_15_ia.md

💡 Checkpoint de Lógica

As IAs não vão substituir os programadores. Mas os programadores que sabem usar IA vão substituir os programadores que não sabem! Use-as para focar nas partes difíceis e deixe que elas façam o trabalho repetitivo.

10. 🔥 Desafio de Fixação

Pesquise o que significa o termo Prompt Engineering (Engenharia de Prompt) e como isso ajuda a obter melhores respostas das IAs.

🔑 Gabarito de Código/Fórmulas

Gabarito da Prática 1:

  1. Ele não deve pedir: “Faça o exercício X para mim”. Ele deve pedir: “Me explique como funciona o loop for em C++ e me dê um exemplo simples de como contar de 1 a 10”. Assim ele aprende o conceito para conseguir resolver o exercício sozinho! Gabarito da Prática 2:
  2. Você não deve dar o commit. Você deve parar, ler o código linha por linha e tentar entender. Se não entender, pode copiar o código e jogar no ChatGPT perguntando: “O que essa função que o Copilot gerou faz?“. Só salve o código no seu projeto quando você entender o que ele está fazendo!

Capitulo Anterior | Proximo Capitulo