¿Qué es un depurador?
Durante su trabajo como desarrollador, es inevitable que en algún momento se pregunte:
¿Por qué no funciona el código?
Esta es una parte normal del día a día de cualquier desarrollador. El truco es familiarizarse con la búsqueda y la corrección de los errores para que no se convierta en una actividad frustrante y pesada. Cuando se produce un error en un programa, cada persona aborda la situación de una manera diferente.
Probablemente ya haya intentado uno o varios de estos enfoques de depuración:
- Intentar volver a ejecutar el programa, porque debería funcionar.
- Explicarle el problema a un amigo imaginario.
- Volver a leer el código para averiguar cuál es el problema.
- Ir a dar un paseo.
- Enviar algunos mensajes de correo no deseado
Console.WriteLine("here")
en el código.
Es posible que estos métodos solo funcionen hasta cierto punto. Hay un enfoque que se suele considerar más efectivo: usar un depurador. Pero ¿qué es un depurador exactamente?
Un depurador es una herramienta de software que se puede usar para observar y controlar el flujo de ejecución de un programa desde una perspectiva analítica. Su objetivo de diseño consiste en detectar la causa principal de un error y ayudar a resolverlo. Para ello, hospeda el programa en su propio proceso de ejecución, o bien lo ejecuta como un proceso independiente que está asociado al programa en ejecución, como .NET.
Hay diferentes tipos de depuradores. Algunos funcionan directamente desde la línea de comandos, mientras que otros tienen una interfaz gráfica de usuario. En este módulo, usaremos el depurador gráfico integrado de Visual Studio Code.
¿Por qué usar un depurador?
Si no ejecuta el código a través de un depurador, significa que probablemente esté adivinando lo que ocurre en el programa. La principal ventaja de usar un depurador es que puede ver cómo se ejecuta el programa. Puede seguir línea a línea la ejecución del programa. De esta manera evitará equivocarse.
Cada depurador tiene su propio conjunto de características. Las dos más importantes que se incluyen con casi todos son las siguientes:
- Control de la ejecución del programa: Puede pausar el programa y ejecutarlo paso a paso, lo que le permite ver qué código se ejecuta y cómo afecta al estado del programa.
- Vigilancia del estado del programa: Por ejemplo, puede examinar el valor de las variables y los parámetros de función en cualquier momento durante la ejecución del código.
El dominio del uso del depurador es una habilidad importante para un desarrollador, pero se suele pasar por alto. Le hace más eficaz a la hora de buscar errores en el código y puede ayudarle a comprender rápidamente el funcionamiento de un programa.
Lo trataremos en la próxima unidad.