Tipos de errores en programación


Los errores de programación pertenecen a tres categorías: errores de compilación, errores en tiempo de ejecución y errores lógicos.
Errores de compilación
Los errores de compilación, también conocidos como errores del compilador, son errores que impiden que su programa se ejecute. Cuando se presiona F5 para ejecutar un programa, Visual Basic compila el código en un lenguaje binario que entiende el equipo. Si el compilador de Visual Basic se encuentra con código que no entiende, emite un error de compilador.
La mayoría de los errores del compilador se deben a errores cometidos al escribir el código. Por ejemplo, puede escribir mal una palabra clave, omitir alguna puntuación necesaria o intentar utilizar una instrucción End If sin antes utilizar una instrucción If.
Afortunadamente el Editor de código de Visual Basic fue diseñado para identificar estos errores antes de que se intente ejecutar el programa. Aprenderá a encontrar y corregir los errores de compilación en la lección siguiente, Error ortográfico: encontrar y eliminar errores del compilador.
Los errores del compilador aparecen cuando el compilador de Visual Basic se encuentra con código irreconocible, generalmente porque se cometió algún error al escribir. Dado que los errores del compilador impiden que se ejecute un programa, deberá encontrarlos y corregirlos, o depurarlos, antes de ejecutar el programa.

Encontrar los errores del compilador es bastante fácil, ya que el programa no se ejecuta hasta que se han corregido. Cuando presiona F5, si hay algún error del compilador, aparecerá un cuadro de diálogo que indica "Errores al generar. ¿Desea continuar?". Si selecciona , se ejecutará la última versión sin errores del programa; si selecciona No, el programa se detendrá y aparecerá la ventana Lista de errores.
La ventana Lista de errores muestra toda la información sobre el error, incluida su descripción y ubicación en el código. Si hace doble clic en el error en la Lista de errores, se resaltará la línea incorrecta del código en el Editor de código. También puede presionar F1 para mostrar Ayuda y obtener más información sobre el error y cómo corregirlo.
El Editor de código de Visual Basic también puede ayudar a encontrar y corregir los errores del compilador antes incluso de que se intente ejecutar el programa. Mediante una característica llamada IntelliSense, Visual Basic observa el código a medida que se escribe y si encuentra código que producirá un error del compilador, lo subraya con una línea ondulada de color azul. Si mantiene presionado el mouse sobre esa línea, se muestra un mensaje que describe el error. Si la ventana Lista de errores está visible, también mostrará los mensajes de error.
Encontrar errores: introducción a la depuración en Visual Basic
No importa lo minuciosamente que se diseñe un programa o se escriba el código, siempre pueden aparecer errores. En ocasiones los errores impedirán que se inicie el programa, unas veces harán que el programa deje de ejecutarse o se bloquee y otras se ejecutará pero no ofrecerá los resultados esperados.
Y, por supuesto, cuando los errores aparecen, querrá encontrarlos y corregirlos. Los errores de un programa se conocen normalmente como errores, y el proceso de encontrarlos y corregirlos se denomina depurar.
El proceso de depuración es iterativo; es decir, se repetirá una y otra vez. Por lo general, escribe código, ejecuta el programa hasta que aparece un error, encuentra el error, lo corrige y, a continuación, ejecuta el programa de nuevo.
En la mayoría de los casos, no necesita detener el programa para corregirlo. Puede corregir el código donde apareció el error y seguir ejecutando el programa desde allí; este proceso se llama Editar y continuar.
La depuración se realiza en el IDE (entorno de desarrollo integrado) de Visual Basic, que contiene varios comandos y ventanas especiales para ayudar a encontrar los errores. Obtendrá más información en las lecciones siguientes.

Errores en tiempo de ejecución
Los errores en tiempo de ejecución son errores que aparecen mientras se ejecuta su programa. Estos errores aparecen normalmente cuando su programa intenta una operación que es imposible que se lleve a cabo.
Un ejemplo de esto es la división por cero. Suponga que tiene la instrucción siguiente:
Speed = Miles / Hours
Si la variable Hours tiene un valor de 0, se produce un error en tiempo de ejecución en la operación de división. El programa se debe ejecutar para que se pueda detectar este error y si Hours contiene un valor válido, no se producirá el error.
Cuando aparece un error en tiempo de ejecución, puede utilizar las herramientas de depuración de Visual Basic para determinar la causa. Aprenderá a encontrar y corregir los errores en tiempo de ejecución en la lección ¡Uff! A mi programa no le ha gustado Encontrar y eliminar errores en tiempo de ejecución.
¡Uff! A mi programa no le ha gustado Encontrar y eliminar errores en tiempo de ejecución
Los errores en tiempo de ejecución se producen cuando el programa intenta realizar una operación que es imposible finalizar. Cuando se produce un error en tiempo de ejecución, el programa se detiene y aparece un mensaje de error; debe depurar el error y corregirlo para que el programa pueda continuar.
La mayoría de los errores en tiempo de ejecución se producen porque se cometió un error en el código; por ejemplo, olvidó asignar un valor a una variable antes de utilizarla. Cuando se ejecute el programa y se descubra el error, el programa se detendrá y el cuadro de diálogo Ayudante de excepciones se mostrará en la ventana Editor de código. Cuando esto sucede, el programa está en modo de interrupción, que es el modo en que se realiza la depuración.
El cuadro de diálogo Ayudante de excepciones contiene una descripción del error, así como sugerencias para la solución de problemas que indican la causa. Puede hacer clic en las sugerencias sobre solución de problemas para mostrar los temas de Ayuda y obtener más detalles.
Es necesario corregir el error para que pueda continuar con el programa; para ello, debe inspeccionar el código para encontrar la causa del error. Por ejemplo, si sospecha que se produjo un error porque una variable contiene el valor equivocado, estando todavía en el modo de interrupción, puede utilizar IntelliSense para ver el valor de la variable. Cuando se coloca el mouse sobre la variable en el Editor de código, la información sobre herramientas muestra el valor de la variable. Si el valor no es lo que esperaba, compruebe en el código anterior dónde se estableció el valor y después arregle el código y continúe.
Errores lógicos
Los errores lógicos son errores que impiden que su programa haga lo que estaba previsto. Su código puede compilarse y ejecutarse sin errores, pero el resultado de una operación puede generar un resultado no esperado.
Por ejemplo, puede tener una variable llamada FirstName y establecida inicialmente en una cadena vacía. Después en el programa, puede concatenar FirstName con otra variable denominada LastName para mostrar un nombre completo. Si olvida asignar un valor a FirstName, sólo se mostrará el apellido, no el nombre completo como pretendía.
Los errores lógicos son los más difíciles de detectar y corregir, pero Visual Basic también dispone de herramientas de depuración que facilitan el trabajo. Aprenderá a encontrar y corregir los errores lógicos en ¿Qué? Esto no debiera haber ocurrido. Detectar errores lógicos.
El tercer tipo de error de programación, los errores lógicos, puede ser el más difícil de descubrir. Con los errores lógicos no se obtiene ninguna advertencia, se ejecutará el programa pero proporcionará resultados incorrectos. Es necesario investigar el código y determinar la razón del problema.
Afortunadamente, las herramientas de depuración de Visual Basic pueden ayudar. Dos técnicas de depuración, que establecen puntos de interrupción e instrucciones paso a paso a través del código, permiten inspeccionar el código línea por línea mientras se ejecuta para encontrar el error.
Se puede establecer un punto de interrupción en el Editor de código para cualquier línea ejecutable de código. Cuando se ejecuta el programa, los puntos de interrupción fuerzan que se detenga y el programa entra en el modo de interrupción cuando llega a esa línea de código. Puede obtener la información que desee sobre el estado del programa en ese momento. Puede comprobar el valor de cualquier variable, comprobar expresiones en la ventana Inmediato o realizar cambios en el código con Editar y continuar.
Cuando está en modo de interrupción, puede recorrer el código, ejecutando línea por línea para ver cómo funciona. Al presionar la tecla F8, se ejecutará la línea de código actual y se detendrá en la línea siguiente. Puede inspeccionar los valores de variables para ver cómo cambian de una línea a la siguiente.
Si la línea de código actual llama a una función o procedimiento Sub en otra parte del código, cuando presiona F8, la ejecución se desplazará a ese procedimiento. Una vez que se haya ejecutado ese procedimiento, el programa volverá a la línea siguiente a la que llamó al procedimiento. Si no desea recorrer un procedimiento, puede presionar MAYÚS+F8 para saltarlo.

No hay comentarios: