6.1. Depuración

Actividad
El depurador es una herramienta del IDE que permite detectar y corregir errores de sintaxis en el código del programa. Depurar un programa es eliminar los fallos y errores de compilación, para hacerlo más eficiente y poder compilarlo y ejecutarlo.
Un control de error se usa para dirigir el comportamiento del programa cuando se presente una situación anómala.
![]() |
Imagen en Flickr de Charly W. Karl con Algunos derechos reservados |
Ya has podido observar, y comprobar con las prácticas, que cuando se desarrolla software, a medida que se va probando, nos vamos encontrando errores, bien de sintaxis o de funcionamiento.
Los errores de sintaxis, como ya sabes, son los relativos a la forma en la que se escriben las distintas instrucciones que componen el programa, y la solución a los mismos no es otra que la de comprobar meticulosamente cómo, el lenguaje utilizado, nos especifica la manera de expresar cada orden.
Una vez corregidos todos los errores de sintaxis nos encontraremos los errores de funcionamiento, que pueden ocasionar la interrupción de la ejecución del programa o no. Las causas de estos errores son más difíciles de detectar, sobre todo cuando no provocan la interrupción de la ejecución. Aquí entra en juego la depuración, que hará más leve el trabajo de detección de los mismos al programador.
Depurar un programa consiste en realizar el proceso de detección e identificación de errores y problemas que puede contener el mismo para su posterior corrección y eliminación. Se dice que un programa está depurado cuando está libre de errores. Para referirse a la depuración también se suele utilizar el término inglés "debugging", que procede de la traducción literal de eliminación de bichos (bugs), nombre con el que se conoce coloquialmente a los errores en programación.
En el proceso de depuración se realiza un seguimiento del funcionamiento del programa, en el que se observan los distintos valores que van tomando las variables y los resultados que se obtienen en las operaciones. Es lo que se denomina "hacer una traza del programa".
Depurar un programa es una tarea ardua, engorrosa y agotadora, por ello, para simplificarla, es conveniente utilizar herramientas destinadas a tal fin. El software que permite realizar este proceso de revisión y detección de errores se llama depurador o debugger.
El debugger permite, entre otras cosas:
- Establecer puntos de interrupción en la ejecución del programa.
- Continuar la ejecución después de una interrupción.
- Ejecutar paso a paso el programa.
- Examinar los valores que van tomando las variables utilizadas en el programa.

Curiosidad
No todos los entornos de programación ofrecen depuradores a los programadores. Cuando no se dispone de un depurador los programadores suelen recurrir a un proceso de depuración manual, consistente en colocar en puntos estratégicos del código fuente instrucciones que muestren por pantalla el valor de las variables. De esa manera, se suple la posibilidad que brindan los depuradores de poder visualizar los valores contenidos en las variables en determinados puntos durante la ejecución del programa. Una vez que se han podido ver dichos valores durante la ejecución del programa, las instrucciones que permiten ver dichos valores son eliminadas del código fuente, o son comentadas (se las convierte en comentarios) por si en algún otro momento vuelven a ser necesarias.

AV - Pregunta Verdadero-Falso
Retroalimentación
Falso
Los controles de error intentan evitar que se produzca un final inesperado del programa.
Actividad
- Un punto de interrupción o punto de ruptura es una marca que el programador fija, mediante el uso del software depurador, en alguna de las instrucciones del código fuente de un programa para que la ejecución del mismo se detenga ahí momentáneamente. Esta detención en la ejecución del programa permitirá al programador examinar los valores que tienen almacenados las variables en ese preciso instante. De esta forma, el programador posee un mecanismo muy potente para verificar el funcionamiento del programa en cualquier punto.
- Ejecución paso a paso: Otra de las opciones que poseen los depuradores es la de permitir la ejecución de un programa instrucción a instrucción, deteniéndose en cada una para que el programador pueda ir examinando los valores que van almacenando las variables después de cada instrucción ejecutada. Es decir, que hace el mismo efecto que si se colocara un punto de interrupción en cada instrucción del programa. Por supuesto, en cualquier momento el propio programador podrá abandonar la ejecución paso a paso haciendo que el programa se ejecute de forma normal, si detenerse, hasta llegar al final o al siguiente punto de interrupción fijado.