Significado de Depuración
Sustantivo femenino. De «depurar» (del latín depurare, «purificar»). En informática, calco semántico del inglés to debug, formado sobre bug, «fallo», palabra usada para los defectos de un sistema desde antes de la informática.
La depuración es el proceso de localizar, analizar y corregir los errores de un programa informático, desde que se detecta un fallo hasta que se confirma que ha quedado resuelto.
No es lo mismo que probar un programa: las pruebas buscan detectar que algo falla, mientras que la depuración empieza justo después, para averiguar por qué falla y cómo arreglarlo.
Qué es la depuración
Depurar un programa no consiste en revisarlo línea por línea al azar: es un proceso metódico que empieza por reproducir el error de forma constante, sigue con la búsqueda de la causa exacta que lo provoca y termina con una corrección que se comprueba de nuevo para asegurarse de que el fallo ha desaparecido sin introducir otros nuevos.
Un error puede deberse a muchas causas: una condición mal escrita, un dato con un valor inesperado, una variable que no se actualiza donde debería o una suposición incorrecta sobre cómo se comporta otra parte del programa. Encontrar la causa exacta suele llevar más tiempo que aplicar la corrección una vez identificada.
La practican los programadores con ayuda de herramientas específicas, llamadas depuradores, que permiten detener un programa en un punto concreto y examinar el valor de sus variables en ese momento, en lugar de tener que deducirlo solo con la lectura del código.
Origen de la palabra depuración
De «depurar», del latín depurare, «purificar, limpiar de impurezas», formado sobre purus, «puro». En informática, el sentido de «eliminar errores» traduce el inglés to debug, literalmente «quitar el bicho», construido sobre bug, palabra que ya se usaba en inglés técnico, antes de la informática, para nombrar un defecto o un fallo mecánico.
Una anécdota muy citada, aunque probablemente no sea el origen del término, cuenta que en 1947 un equipo que trabajaba con un ordenador antiguo encontró literalmente una polilla atrapada en un relé y la pegó en el cuaderno de registro; la palabra «bug» para referirse a un fallo, sin embargo, ya se documentaba antes de ese episodio.
Técnicas de depuración
| Técnica | En qué consiste |
|---|---|
| Puntos de interrupción | Detienen el programa en una línea concreta para examinar el estado de las variables. |
| Impresión de trazas | Muestra en pantalla el valor de ciertas variables mientras el programa se ejecuta. |
| Ejecución paso a paso | Avanza el programa una instrucción cada vez, observando el efecto de cada una. |
| Revisión de código | Otra persona lee el código en busca de errores que el autor no ha notado. |
La elección de la técnica depende del tipo de error: un fallo que se repite siempre igual suele resolverse con un punto de interrupción, mientras que uno que aparece de forma intermitente puede necesitar trazas registradas durante un periodo más largo.
Ejemplos de uso de depuración
Pasó la tarde en la depuración de un error que solo aparecía con ciertos datos de entrada.
Usó un punto de interrupción durante la depuración para ver el valor exacto de la variable.
La depuración reveló que el error estaba en una condición mal escrita, no en el bucle principal.
El entorno de desarrollo incluye herramientas de depuración integradas para facilitar este proceso.
Tras la depuración, el equipo confirmó que el programa ya no fallaba con los casos anteriores.
Sinónimos y palabras relacionadas
Sinónimos: corrección de errores; en el uso técnico, «debugging» (voz inglesa cruda, cuyo equivalente recomendado es «depuración»).
Antónimos: no tiene antónimo propiamente dicho.
No es lo mismo que:
- Prueba de software: busca detectar que un programa falla en ciertos casos; la depuración empieza después, para averiguar la causa exacta del fallo detectado.
- Compilador: detecta errores de sintaxis antes de ejecutar el programa; la depuración se ocupa también de los errores que solo aparecen durante la ejecución.
- Entorno de desarrollo: es el conjunto de herramientas donde se depura el código; la depuración es la actividad concreta que se realiza con esas herramientas.
Preguntas frecuentes sobre depuración
¿Qué es un depurador?
Es una herramienta que permite detener un programa en un punto concreto de su ejecución y examinar el valor de sus variables en ese momento, en lugar de tener que deducirlo solo leyendo el código fuente.
¿Por qué algunos errores son tan difíciles de depurar?
Porque no siempre se reproducen de la misma forma: algunos dependen de datos concretos, del orden en que se ejecutan ciertas operaciones o de condiciones que solo se dan de vez en cuando, lo que dificulta encontrar la causa exacta.
¿Depurar es lo mismo que corregir un error?
No exactamente. Depurar incluye también el proceso previo de localizar y entender el error; corregirlo es solo el último paso, una vez que se sabe con precisión qué parte del código hay que cambiar.