Durante el proceso de programación, podemos encontrarnos con muchos tipos de errores, desde los que se producen durante la escritura del código hasta los que aparecen durante el uso del programa.
Cuando no se emplean correctamente las reglas del lenguaje de programación.
Este tipo de errores son detectados por el compilador o intérprete.
El siguiente código en PHP muestra un par de errores de sintaxis:
<?php eco "Hola, mundo" ?>
El intérprete de PHP se quejará porque para la salida por pantalla la instrucción es echo y las sentencias se finalizan con punto y coma (;)
Cuando el programa funciona, pero no lo hace de la forma correcta.
Por ejemplo, una situación infame tuvo lugar en la década de 1990 cuando la NASA perdió el Mars Observer porque había programado el software en unidades estadounidenses en lugar de unidades métricas.
Los errores aparecen en la ejecución del programa.
No es posible dividir un número por 0.
Si la condición de salida del bucle nunca se cumple, el bucle no dejará de repetirse acabando con los recursos de la máquina que lo ejecuta.
Acceder a memoria no permitida.
Cuando un programa no controla adecuadamente la cantidad de datos que se copian sobre un área de memoria reservada a tal efecto.
Bloqueo permanente de un conjunto de procesos o hilos de ejecución en un sistema concurrente que compiten por recursos del sistema o bien se comunican entre ellos.