Examine a abordagem do depurador de código para depurar código
- 5 minutos
Todo desenvolvedor tem que lidar com bugs de código, é apenas um modo de vida para desenvolvedores. Às vezes, você pode detetar seus bugs rapidamente. Afinal, você escreveu o código e, além disso, é bom encontrar e corrigir um problema rapidamente. Inevitavelmente, porém, haverá momentos em que você se encontrará procurando por um bug que não é tão fácil de detetar.
Processo de depuração de código
Quando você percebe um bug em seu código, pode ser tentador tentar uma abordagem direta. Você sabe, aquela verificação rápida onde você acha que o problema pode estar. Se compensa nos primeiros 30 segundos, ótimo, mas não se deixe sugar por aí. Não continue indo para o próximo lugar, e para o próximo. Não se deixe jogar tempo contra as seguintes abordagens:
- Lendo seu código (apenas mais uma vez) esperando que desta vez o problema salte para você.
- Integrando algumas
Console.WriteLine("here")mensagens em seu código para acompanhar o progresso através do seu aplicativo. - Executar novamente seu aplicativo com dados diferentes. Esperando que, se você ver o que funciona, você vai entender o que não funciona.
Você pode ter experimentado vários graus de sucesso com esses métodos, mas não se deixe enganar. Há uma maneira melhor.
A única abordagem que é comumente considerada como sendo a mais bem-sucedida é o uso de um depurador. Mas o que é um depurador ao certo?
Um depurador é uma ferramenta de software utilizada para observar e controlar o fluxo de execução do seu programa com uma abordagem analítica. Os depuradores ajudam a isolar a causa de um bug e a resolvê-lo. Um depurador se conecta ao seu código usando uma das duas abordagens:
- Hospedando seu programa em seu próprio processo de execução.
- Executando como um processo separado que é anexado ao seu programa em execução.
Os depuradores têm diferentes variantes. Alguns funcionam diretamente na linha de comandos, enquanto outros têm uma interface gráfica. O Visual Studio Code integra ferramentas de depurador na interface do usuário.
Motivos para utilizar um depurador
Se você não estiver executando seu código por meio de um depurador, provavelmente está adivinhando o que está acontecendo em seu aplicativo em tempo de execução. A principal vantagem da utilização de um depurador é que pode ver o seu programa a ser executado. Você pode seguir a execução do programa uma linha de código de cada vez. Essa abordagem minimiza a chance de adivinhar errado.
O Visual Studio Code oferece suporte a depuradores de código que permitem que você observe seu código enquanto ele é executado. A imagem a seguir mostra um aplicativo em execução, com a execução pausada na linha de código realçada. O lado direito da tela mostra o código do programa, enquanto o lado esquerdo mostra o estado atual das variáveis.
Cada depurador tem o seu próprio conjunto de funcionalidades. Os dois recursos mais importantes que vêm com quase todos os depuradores são:
Controlo da execução do seu programa. Você pode pausar seu programa e executá-lo passo a passo, o que permite que você veja qual código é executado e como ele afeta o estado do programa.
Observação do estado do seu programa. Por exemplo, você pode examinar o valor de suas variáveis e parâmetros de função a qualquer momento durante a execução do código.
Dominar o uso de um depurador de código é uma habilidade importante. Infelizmente, é uma habilidade que os desenvolvedores muitas vezes ignoram. O uso eficaz de um depurador ajuda você a ser mais eficiente na busca de bugs em seu código. Os depuradores também podem ajudá-lo a entender como um programa funciona.
Recapitulação
Aqui estão algumas coisas importantes para lembrar desta unidade:
- A depuração de código é uma habilidade crucial no processo de desenvolvimento de software que todo desenvolvedor aprende.
- A melhor abordagem para depurar seus aplicativos é usar um depurador, não relendo seu código cinco vezes ou adicionando
console.WriteLine()instruções em todo o código. - Os depuradores permitem que você pause seu aplicativo, percorra seu código linha por linha e observe o estado das variáveis e parâmetros de função.