Diferencia entre tiempo de ejecución y tiempo de compilación

Escrito por eric david lindgren | Traducido por juliana star
  • Comparte
  • Twittea
  • Comparte
  • Pin
  • E-mail
Diferencia entre tiempo de ejecución y tiempo de compilación
Los programas de computadora se ejecutan en dos etapas distintas. (Ablestock.com/AbleStock.com/Getty Images)

El funcionamiento interno de una computadora sigue siendo un misterio para el usuario promedio, que depende del trabajo de los programadores para decirle a la computadora lo que tiene que hacer. El programador debe comprender la forma en la que la computadora espera recibir instrucciones y las dos etapas de la ejecución de un programa, el tiempo de compilación y el de ejecución, además de otros conceptos.

Otras personas están leyendo

Tiempo de compilación

La primera etapa en la ejecución de un programa, el tiempo de compilación, involucra la traducción de un lenguaje que los humanos comprenden, o código fuente, al lenguaje que las computadoras entienden, o código máquina. El código fuente contiene palabras que reconoces, números en formato decimal y agrupaciones organizativas que hacen que el flujo de instrucciones sea más sencillo de comprender. La etapa del tiempo de compilación termina cuando el nuevo programa es un archivo ejecutable.

Diferencia entre tiempo de ejecución y tiempo de compilación
El tiempo de compilación traduce código de lenguaje humano a lenguaje máquina. (Thinkstock/Comstock/Getty Images)

Tiempo de ejecución

La computadora usa las instrucciones que el tiempo de compilación produce para ejecutar el programa. Durante el tiempo de ejecución la computadora lee la traducción del código fuente para llevar a cabo las tareas que el programador ha incorporado en el código. Cada vez que alguien ejecuta el programa lo hace en tiempo de ejecución.

Diferencia entre tiempo de ejecución y tiempo de compilación
El tiempo de ejecución ocurre cuando la computadora ejecuta el programa. (Jupiterimages/Photos.com/Getty Images)

Diferencia

El tiempo de compilación se lleva a cabo solamente una vez, traduciendo el código fuente a un archivo ejecutable. Este último puede iniciar el tiempo de ejecución cualquier cantidad de veces sin necesitar volver a visitar el tiempo de compilación a menos que el programa requiera cambios. La mayoría de los usuarios de programas experimentan solamente el tiempo de ejecución.

Diferencia entre tiempo de ejecución y tiempo de compilación
El tiempo de ejecución y el de compilación son dos etapas de procesamiento diferentes. (Jupiterimages/Photos.com/Getty Images)

Errores del tiempo de compilación

Los errores pueden ocurrir durante ambas etapas de la ejecución del programa. Los errores de tiempo de compilación, o errores de sintaxis, existen en el código fuente. Entre los ejemplos se encuentran comandos mal escritos, orden incorrecto de las operaciones, variables con tipos no coincidentes y omisión de los elementos necesarios. Un programador puede detectar errores en tiempo de compilación muy fácilmente debido a que son sintácticos en vez de lógicos. El compilador generalmente indicará un error en tiempo de compilación y explicará o dará pistas acerca de cómo solucionarlo. Si el compilador genera exitosamente un archivo ejecutable a partir de tu código fuente, significa que tu programa no contiene errores en tiempo de compilación.

Diferencia entre tiempo de ejecución y tiempo de compilación
Los errores en tiempo de compilación ocurren antes de que tu programa se vuelva ejecutable. (Comstock/Comstock/Getty Images)

Errores catastróficos en tiempo de ejecución

Los errores en tiempo de ejecución ocurren mientras un programa se ejecuta. Los errores catastróficos en tiempo de ejecución ocasionan que un programa se bloquee y deje de ejecutarse prematuramente. Entre los ejemplos se encuentran el acceso a memoria restringida y la división entre cero. La instrucción x / y es correcta sintácticamente, pero si 'y' contiene el valor 0 en tiempo de ejecución causará que el programa se bloquee. Un programador quizá encuentre difícil el detectar errores catastróficos en tiempo de ejecución debido a que usualmente ocurren sólo bajo ciertas condiciones.

Diferencia entre tiempo de ejecución y tiempo de compilación
Los errores en tiempo de ejecución pueden ocasionar que tu programa se bloquee. (Stockbyte/Stockbyte/Getty Images)

Errores lógicos en tiempo de ejecución

Un error lógico no causa que el programa se bloquee pero hace que se ejecute de una forma que el programador no esperaba. Considera un programa con un menú de opciones que espera que el usuario introduzca el número de la opción que desee. Si el usuario escribe una letra, el programa, esperando un número, la convierte a un valor numérico y envía al usuario a una de las opciones del menú. El programa se ejecuta como si nada estuviera mal en vez de decirle al usuario que escribió una opción no válida.

Diferencia entre tiempo de ejecución y tiempo de compilación
Los errores en tiempo de ejecución pueden causar un comportamiento no esperado. (Comstock/Comstock/Getty Images)

No dejes de ver

Filtrar por:
  • Mostrar todos
  • Artículos
  • Galerías de fotos
  • Videos
Ordenar:
  • Más relevante
  • Más popular
  • Más reciente

No se encuentran artículos disponibles

No se encuentran slideshows disponibles

No se encuentran videos disponibles