Angola e Portugal · todas as cidades Subdomínios em perfilvia.com
Programação e informática

Como depurar código: guia de debugging para iniciantes

Aprende a encontrar e corrigir erros no código: ler mensagens de erro, usar console.log e print, breakpoints e um método passo a passo.

· 4 min de leitura · Equipa Comunidade Sempre Online

Ilustração sobre como depurar código – guia do blog Comunidade Sempre Online

Passas uma hora a escrever código, corres e... erro. Ou pior: não dá erro, mas o resultado está errado. Depurar (debugging) é a arte de encontrar a causa e corrigi-la. É uma competência que se treina e que separa quem desiste de quem avança.

Tipos de erros

  1. Erros de sintaxe: escreveste algo que a linguagem não entende (falta um parêntese, uma vírgula, dois pontos). O programa nem arranca.
  2. Erros de execução: o programa arranca mas falha a meio (dividir por zero, aceder a algo que não existe).
  3. Erros de lógica: o programa corre sem queixas, mas faz a coisa errada. São os mais difíceis de apanhar.
Imagem de apoio do guia: Como depurar código: guia de debugging para iniciantes

Primeiro: lê a mensagem de erro

A maioria dos iniciantes ignora-a. Ela diz-te quase sempre o tipo de erro, o ficheiro e a linha. Exemplo em Python:

Traceback (most recent call last):
  File "troco.py", line 4, in <module>
    print(pago - preco)
NameError: name 'preco' is not defined

Tradução: na linha 4 do ficheiro troco.py, usaste uma variável preco que nunca definiste. Pode ser um erro de escrita (preço vs preco) ou falta de atribuição.

Método de 6 passos

  1. Reproduz o erro. Descobre exatamente o que fazes para ele aparecer.
  2. Isola. Reduz o código até ao mínimo que ainda falha.
  3. Formula uma hipótese. "Acho que a variável está vazia aqui."
  4. Verifica. Imprime valores ou usa o depurador.
  5. Corrige uma coisa de cada vez.
  6. Testa de novo e confirma que não partiste outra coisa.

Imprimir valores

A técnica mais simples e eficaz:

def media(notas):
    print("notas:", notas)          # o que recebi?
    total = sum(notas)
    print("total:", total)
    return total / len(notas)

Em JavaScript: console.log(valor). Quando perceberes o problema, remove as linhas de teste.

Usar o depurador

O VS Code e os navegadores têm depuradores integrados. Permitem:

  • Breakpoints: marcar uma linha onde o programa pára.
  • Executar passo a passo e ver o valor de cada variável.
  • Ver a pilha de chamadas: quem chamou quem.

No navegador, abre as ferramentas (F12) e vai ao separador Sources ou Depurador. Num ambiente com VS Code, clica à esquerda do número da linha para pôr um breakpoint.

A técnica do "patinho de borracha"

Explica o teu código, linha a linha, em voz alta, a um objeto (ou a um colega). Muitas vezes, a meio da explicação, descobres o erro. Funciona porque te obriga a dizer o que o código realmente faz, e não o que pensas que faz.

Erros frequentes e suspeitos habituais

  • Usar = em vez de == ou === numa comparação.
  • Índices fora do limite (listas começam em 0).
  • Variáveis com nomes parecidos.
  • Tipos errados: texto onde devia estar número.
  • Alterar uma lista enquanto a percorres.
  • Falta de return numa função.
  • Caminhos de ficheiros errados ou ficheiro com extensão oculta.

Quando pedir ajuda

Se gastaste 30 minutos sem avançar, pede ajuda, mas com um bom pedido:

  1. O que queres que o programa faça.
  2. O código mínimo que reproduz o problema.
  3. A mensagem de erro completa.
  4. O que já tentaste.

Pedidos assim recebem respostas rápidas e ensinam-te a pensar melhor. Se o problema for num site que já está online e precisas de uma mão profissional, podemos ajudar na correção de erros em sites.

Prevenir é melhor do que depurar

  • Escreve e testa pequenos pedaços de cada vez.
  • Dá nomes claros às variáveis.
  • Usa Git para poderes voltar atrás.
  • Mantém as funções curtas e com um único objetivo.

Perguntas frequentes

É normal passar mais tempo a depurar do que a escrever?

Sim. Programadores experientes gastam uma boa parte do tempo a ler, testar e corrigir código.

Print ou depurador?

Ambos servem. O print é rápido para casos simples; o depurador compensa em problemas complicados.

Posso usar IA para ajudar a depurar?

Pode ajudar a explicar um erro, mas deves sempre perceber a correção proposta. Se só copiares, não aprendes e podes introduzir novos problemas.

Se quiseres ajuda

Podemos fazer isto contigo.

Ver todos os serviços
Fala connosco

Tens uma dúvida sobre este tema?

Escreve-nos pelo WhatsApp e respondemos com preço, disponibilidade e prazo, se precisares de um serviço.

Falar no WhatsApp
Todo o projeto tem um orçamento. O valor final é confirmado conforme o serviço.
WhatsApp · Falar agora