Introdução
Então, você já aprendeu o básico de uma linguagem de programação. Provavelmente já fez o famoso “Hello World” e começou um projeto pessoal ou seguiu tutoriais suficientes para transformar uma ideia em código.
Mas o que acontece quando seu código não compila? Quem está começando a programar geralmente procura na internet para ver se outras pessoas tiveram o mesmo problema. Isso pode ser cansativo, pois você teria que pesquisar toda vez que aparecer um erro.
E quando seu programa compila, mas não funciona do jeito que você esperava? (Ou seja, você encontrou um bug? 🪲)
Voltar para corrigir seu código pode ser mais difícil do que escrever ele do zero. Aprender a lidar com esses bugs e erros exige habilidade, paciência e experiência. Neste workshop, vamos descobrir o processo básico para depurar seu código. Lembre-se: depurar faz parte de todas as linguagens de programação.
Sobre este workshop
Este workshop assume que você já entende e consegue escrever código na linguagem C. Os exemplos aqui usam estruturas de dados e algoritmos, assuntos que normalmente aparecem em cursos de introdução à ciência da computação. Vamos explicar rapidinho, só para você lembrar o que o exemplo está fazendo. Também esperamos que você já tenha uma conta no Replit e saiba usar o Replit.
Replit e o Terminal
Vamos usar o Replit para rodar um código e conhecer melhor o terminal (linha de comando). Clique no botão “Abrir Replit” abaixo e faça uma cópia do programa. Quando abrir o Replit, abra a aba Shell.
Primeiro, vamos compilar nosso código. No terminal, digite o seguinte e aperte ENTER:
make HelloWorld
Depois de compilar, precisamos de outro comando para rodar o programa. Digite o seguinte e aperte ENTER:
./examples/HelloWorld
Você deve ver o texto Hello, World! aparecendo no terminal!
O terminal pode parecer difícil e pouco amigável para quem está começando. Mas saber usar ele é muito importante para sua carreira de programador! Vamos usar o terminal para rodar o gdb e o valgrind mais pra frente, então quanto mais você praticar, melhor!
Os exemplos foram feitos em um único Replit. Vamos mostrar todos os comandos que você precisa para compilar e rodar, então não se preocupe se nunca usou o terminal antes.
Conteúdo do Workshop
- Passo 1 - Encontrando o problema (Parte 1)
- Passo 1 - Encontrando o problema (Parte 2)
- Passo 1 - Encontrando o problema (Parte 3)
- Passo 1 - Encontrando o problema (Parte 4)
- Passo 2 - Corrigindo o problema
- Exercício 1 - Implementação de Árvore Binária
- Exercício 2 - Implementação de Heap Binário
- Exercício 3 - Transformada de Burrows-Wheeler