Diferencia entre el programa fuente y el programa de objetos

Diferencia entre el programa fuente y el programa de objetos

El diferencia clave entre el programa fuente y el programa de objetos es que El programa fuente es un programa legible por humanos escrito por un programador, mientras que el programa de objetos es un programa ejecutable de máquinas creado al compilar un programa fuente.

Los programas de origen se pueden compilar o interpretar para la ejecución. Los descompiladores ayudan a convertir los programas de objetos a sus programas originales de origen. Es importante tener en cuenta que el programa de origen de los términos y el programa de objetos se utilizan como términos relativos. Si toma un programa de transformación del programa (como un compilador), lo que entra es un programa fuente y lo que sale es un programa de objetos. Por lo tanto, un programa de objetos producido por una herramienta puede convertirse en un archivo fuente para otra herramienta.

CONTENIDO

1. Descripción general y diferencia de claves
2. ¿Qué es el programa fuente?
3. ¿Qué es el programa de objetos?
4. Comparación de lado a lado - Programa de origen vs Programa de objetos en forma tabular
5. Resumen

¿Qué es el programa fuente??

El programador escribe el programa fuente utilizando un lenguaje de nivel superior. Por lo tanto, los humanos lo son fácilmente legibles. Los programas de origen generalmente contienen nombres de variables significativos y comentarios útiles para que sea más legible. Una máquina no puede ejecutar directamente un programa fuente. Un compilador ayuda a transformar el programa de origen al código ejecutable para ejecutar por la máquina. Alternativamente, es usar un intérprete. Ejecuta un programa de origen Línea por línea sin precompilación.

Figura 01: un programa fuente

Visual Basic es un ejemplo de un lenguaje compilado, mientras que Java es un ejemplo de lenguaje interpretado. Archivos fuente de Visual Basic (.Los archivos VB) se compilan a .Código EXE, mientras que los archivos fuente de Java (.Los archivos Java) se compilan primero (usando el comando javac) a bytecode (un código de objeto contenido en .archivos de clase) y luego interpretado usando el intérprete Java (usando el comando java). Cuando se distribuyen las aplicaciones de software, generalmente no incluirán archivos de origen. Sin embargo, si la aplicación es de código abierto, la fuente también se distribuye y el usuario también puede ver y modificar el código fuente.

¿Qué es el programa de objetos??

El programa de objetos suele ser un archivo ejecutable de la máquina, que es el resultado de compilar un archivo fuente utilizando un compilador. Además de las instrucciones de la máquina, pueden incluir información de depuración, símbolos, información de pila, reubicación e información de perfiles. Dado que contienen instrucciones en el código de la máquina, los humanos no son fácilmente legibles. Pero a veces, los programas de objetos se refieren a un objeto intermedio entre los archivos de origen y ejecutables.

Las herramientas conocidas como enlazadores ayudan a vincular un conjunto de objetos en un ejecutable (E.gramo. Lenguaje c). Como se ha mencionado más arriba .Los archivos EXE y los archivos de Bytecode son archivos de objetos producidos cuando se usan Visual Basic y Java respectivamente. El .Los archivos EXE se ejecutan directamente en la plataforma Windows, mientras que los archivos de Bytecode necesitan un intérprete para la ejecución.

La mayoría de las aplicaciones de software se distribuyen con el objeto o los archivos ejecutables solo. Es posible convertir el objeto o los archivos ejecutables de nuevo a sus archivos de origen originales por descompilación. Por ejemplo, las herramientas del descompilador pueden descompilar Java.archivos de clase (bytecode) en su original .archivos java.

¿Cuál es la diferencia entre el programa fuente y el programa de objetos??

El programa fuente es un programa legible por humanos escrito por un programador. Está escrito en idiomas de nivel superior como Java o C. Por lo tanto, un programa fuente es legible. No es comprensible por la máquina.

Por otro lado, el programa de objetos es un programa ejecutable de máquinas creado después de compilar un programa fuente. Contiene idiomas de nivel inferior, como ensamblaje o código de máquina. Por lo tanto, el programa de objetos no es legible por el humano. Es comprensible por la máquina.

Resumen -Programa de origen vs Object Programa

La diferencia entre el programa fuente y el programa de objetos es que el programa fuente es un programa legible humano escrito por un programador, mientras que el programa de objetos es un programa ejecutable de máquinas creado al compilar un programa fuente.

Referencia:

1."Código fuente." Wikipedia, Fundación Wikimedia, 17 de mayo de 2018. Disponible aquí

2."Código de objeto." Wikipedia, Fundación Wikimedia, 14 de mayo de 2018. Disponible aquí 

Imagen de cortesía:

1.'Codecmmt002'by Dreftymac (CCBY 2.5) Vía Commons Wikimedia