Herramientas: Enlazador, Compilador, Intérprete, Depurador, Software de Pruebas
Este artículo es una aclaración de conceptos sobre la cadena de herramientas, incluyendo preguntas de examen, componentes clave y etiquetas.
En Resumen
- Compiladores traducen el código fuente a representaciones cercanas a la máquina.
- Enlazadores combinan archivos objeto y bibliotecas en programas ejecutables.
- Intérpretes ejecutan el código directamente o a través de bytecode/VM.
- Depuradores inspeccionan y controlan la ejecución en tiempo de ejecución.
- Software de pruebas valida el comportamiento de forma automatizada.
Descripción Técnica Compacta
Cadena de Compilación
Típicamente:
- Preprocesador
- Compilador (AST/IR → código objeto)
- Ensamblador
- Enlazador (resolución de símbolos, relocalización, ejecutable como ELF)
Enlazado:
- Estático: la biblioteca se incrusta en el ejecutable
- Dinámico: la biblioteca se carga en tiempo de ejecución
Intérprete / VM
- Interpretación de árbol (AST)
- Bytecode + VM
- JIT (Just-in-Time) para mejorar rendimiento
Depurador
Puntos de quiebre, paso a paso, inspección de variables, pila de llamadas, inspección de memoria, análisis de volcado de núcleo.
Software de Pruebas
Framework de pruebas, ejecutor, aserciones, mocks, cobertura e informes. Automatizado en CI/CD.
Puntos Relevantes para Examen
- Flujo de artefactos: código fuente → archivo objeto → binario
- Enlazado estático vs dinámico
- Explicar bytecode/VM/JIT
- Depurador: símbolos, puntos de quiebre, pila de llamadas
- Pirámide de pruebas: unitarias/integración/sistema/aceptación
- Documentación: versiones de herramientas, scripts de compilación, informes de pruebas
Componentes Principales
- Preprocesador
- Compilador (parser/AST/IR)
- Ensamblador
- Enlazador
- Cargador/enlazador dinámico
- Intérprete/VM
- Depurador
- Framework de pruebas/ejecutor
- Automatización CI/CD
- Informes/registros/cobertura
Ejemplo Práctico (Flujo)
1) Compilar: summe.c -> summe.o
2) Enlazar: summe.o + main.o -> programm
3) Depurar: punto de quiebre en addiere(), observar a,b
4) Pruebas: prueba unitaria addiere(2,3)=5, prueba de integración salida CLI
Ventajas y Desventajas
- Compilador: rápido, buena optimización; pero tiempo de compilación/portabilidad
- Intérprete: iteración rápida; pero sobrecarga en tiempo de ejecución
- Software de pruebas: detección temprana de errores; pero costo de mantenimiento
Preguntas Típicas de Examen (con Respuesta Breve)
- ¿Compilador vs Intérprete? Compilador por adelantado, intérprete en tiempo de ejecución.
- ¿Qué hace el enlazador? Resuelve símbolos y genera el binario.
- ¿Cuáles son los niveles de prueba? Unitarias, integración, sistema, aceptación.
- ¿Cómo ayuda el depurador? Puntos de quiebre, modo paso a paso, análisis de pila.



