COMPILACIÓN
La compilación es el proceso de traducción de programas fuente a programas objeto. El programa objeto obtenido de la compilación ha sido traducido normalmente al código común del lenguaje de máquina.
Existen diversas fases de compilación o también llamadas etapas de la compilación que se ilustrarán en la siguiente imagen:

El proceso de ejecución de un programa escrito en un lenguaje de programación y mediante un compilador tiene los siguientes pasos:
- 1. Escritura del programa fuente con un editor (programa que permite a una computadora actuar de modo similar a una máquina de escribir electrónica) y guardarlo en un dispositivo de almacenamiento (por ejemplo, un disco).
2. Introducir el programa fuente en memoria.
3. Compilar el programa con el compilador.
4. Verficar y corregir errores de compilación (listado de errores).
5. Obtención del programa objeto.
6. El enlazador (linker) obtiene el programa ejecutable.
7. Se ejecuta el programa y, si no existen errores, se tendrá la salida del programa.
DEPURACIÓN
Cuando se ha desarrollado el pseudocódigo de un algoritmo o programa y lo introducimos en el ordenador en forma de código, se intenta la primera ejecución. Con esta primera ejecución se empieza a obtener información respecto al estado del programa en cuanto a errores. Es habitual que el programa no funcione a la primera.
Comenzamos un proceso de eliminación de errores que supone ir construyendo un programa sólido a partir de un embrión de programa débil. Vamos a verlo como un proceso de destrucción de una pirámide de errores y construcción de una pirámide de programa sólido.
El umbral que hace al programa válido para su uso es el de ejecución sin errores y con resultados correctos para situaciones y datos de entrada esperados. Por tanto este será un objetivo irrenunciable para el programador. Nos situamos en un nivel en el que no existen errores de obligada ocurrencia pero sí cierta probabilidad de aparición de errores ante circunstancias específicas. Hablando pues en términos de probabilidad no nos referimos a número de errores, sino al grado de vulnerabilidad o, si se prefiere, grado de fortaleza de un programa. Si la posibilidad de errores es alta decimos que el programa es débil o vulnerable y si es baja que es poco vulnerable o fuerte. Las equivalencias serían estas:
Probabilidad de error
|
Grado de vulnerabilidad
|
Grado de fortaleza
|
Muy alta
|
Muy vulnerable
|
Inconsistente, frágil
|
Alta
|
Vulnerable
|
Débil
|
Baja
|
Poco vulnerable
|
Fuerte, sólido
|
Nula
|
Invulnerable
|
Muy fuerte, totalmente sólido
|
Cuanta más depuración más fuerte es el programa, pero también mayor esfuerzo y tiempo requiere. El programador puede adoptar pues una actitud de lucha tenaz y búsqueda de cualquier posible error para su eliminación, a lo que llamamos enfoque de intransigencia, o bien dar por bueno que se produzcan ciertos errores para supuestos poco usuales que serían gestionados, a lo que llamamos enfoque de permisividad. ´
No hay comentarios.:
Publicar un comentario