O que é um depurador?
Durante sua jornada como desenvolvedor, há sempre aquele momento em que você acaba se perguntando:
Por que meu código não está funcionando?
Fazer essa pergunta é uma parte normal do dia de qualquer desenvolvedor. O truque é se sentir confortável em encontrar e corrigir seus bugs com um mínimo de tempo e frustração. Quando há um bug em um programa, todos geralmente têm sua própria maneira de lidar com esse problema.
Você provavelmente já tentou uma ou mais dessas abordagens de debugging:
- Tente executar o programa novamente porque ele deve funcionar.
- Explique o seu problema a um pato de borracha.
- Leia o seu código novamente para descobrir o problema.
- Dê um passeio lá fora.
- Insere algumas mensagens
Console.WriteLine("here")
no teu código.
Você pode ter vários graus de sucesso com esses métodos. A única abordagem que é comumente considerada como sendo mais frequentemente bem-sucedida é o uso de um depurador. Mas o que é um depurador, exatamente?
Um depurador é uma ferramenta de software que você pode usar para observar e controlar o fluxo de execução do seu programa com uma abordagem analítica. Seu objetivo de design é ajudar a encontrar a causa raiz de um bug e ajudá-lo a resolvê-lo. Ele funciona hospedando seu programa em seu próprio processo de execução ou executando como um processo separado que está anexado ao seu programa em execução, como o .NET.
Os depuradores vêm em diferentes formatos. Alguns funcionam diretamente a partir da linha de comando, enquanto outros vêm com uma interface gráfica do usuário. Neste módulo, usaremos o depurador gráfico integrado do Visual Studio Code.
Por que usar um depurador
Se você não estiver executando seu código através de um depurador, isso significa que você provavelmente está adivinhando o que está acontecendo em seu programa. O principal benefício de usar um depurador é que você pode assistir seu programa em execução. Você pode seguir a execução do programa uma linha de código de cada vez. Desta forma, você evita a chance de adivinhar errado.
Cada depurador tem seu próprio conjunto de recursos. Os dois mais importantes que vêm com quase todos eles são:
- Controlar a execução do seu programa: Pode-se pausar o programa e executá-lo passo a passo, o que permite ver qual código é executado e como afeta o estado do programa.
- Observando o estado do seu programa: Por exemplo, você pode olhar para o valor de suas variáveis e parâmetros de função em qualquer ponto durante a execução do código.
Dominar o uso do depurador é uma habilidade importante para um desenvolvedor que muitas vezes é negligenciada. Ele torna você mais eficiente na busca de bugs em seu código e pode ajudá-lo a entender rapidamente como um programa funciona.
Vamos descobrir isso na próxima unidade.