Código objeto
# Código objeto

En programación, se llama código objeto al código que resulta de la compilación del código fuente. Puede ser en lenguaje máquina o bytecode, y puede distribuirse en varios archivos que corresponden a cada código fuente compilado. Luego un enlazador (linker) se encarga de juntar todos los archivos de código objeto para obtener el programa ejecutable. Código objeto: Conjunto de instrucciones y datos escritos en un lenguaje que entiende el ordenador directamente: binario o código máquina. Provienen de la traducción de cierto código fuente, es un fragmento del programa final y es específico de la plataforma de ejecución.

Consiste en lenguaje máquina o bytecode y se distribuye en varios archivos que corresponden a cada código fuente compilado. Para obtener un programa ejecutable se han de enlazar todos los archivos de código objeto con un programa llamado enlazador (linker).

## Código objeto en lenguajes de programación

Un claro ejemplo de lenguaje de programación que usa código objeto en sus bibliotecas es Pascal. Esto le permite aumentar la velocidad de compilación de los programas y reducir su tamaño (ya que cada biblioteca objeto puede ser comprimida), también permite a programadores compartir sus bibliotecas y funciones sin tener la necesidad de liberar su código fuente original. Incluso puede permitir a distintos lenguajes de programación compartir funciones sin necesidad de tener que reescribir el código plano a sus respectivas sintaxis.

## Errores comunes

Los archivos de código objeto pueden ser muy útiles en muchas situaciones y que nos pueden facilitar el trabajo diario, sin embargo consigo traen problemas que pueden generar errores muy difíciles de corregir, por ejemplo cuando un objeto importa funciones de otro archivo de código objeto que ha sido modificado, el intento de la biblioteca o el programa que importó tal biblioteca de ejecutar el código con parámetros incorrectos o inexistentes puede generar un error que generalmente el compilador no detecta, ya que el código objeto no es verificado, únicamente enlazado. Este tipo de error se puede solucionar reescribiendo el código de manera correcta y re compilarlo a código objeto.

