Différence entre le programme source et le programme objet

le différence clé entre le programme source et le programme objet est que Le programme source est un programme lisible par un humain écrit par un programmeur, tandis que le programme objet est un programme exécutable par la machine créé en compilant un programme source..

Les programmes source peuvent être soit compilés, soit interprétés pour exécution. Decompilers aide à reconvertir les programmes objets en leurs programmes sources originaux. Il est important de noter que les termes programme source et programme objet sont utilisés comme termes relatifs. Si vous prenez un programme de transformation de programme (comme un compilateur), ce qui entre est un programme source et ce qui en sort est un programme objet. Par conséquent, un programme objet produit par un outil peut devenir un fichier source pour un autre outil..

CONTENU

1. Vue d'ensemble et différence clé
2. Quel est le programme source
3. Quel est le programme objet
4. Comparaison côte à côte - Programme source vs programme objet sous forme de tableau
5. Résumé

Quel est le programme source?

Le programmeur écrit le programme source en utilisant un langage de niveau supérieur. Par conséquent, il est facilement lisible par les humains. Les programmes source contiennent généralement des noms de variable significatifs et des commentaires utiles pour le rendre plus lisible. Une machine ne peut pas exécuter directement un programme source. Un compilateur aide à transformer le programme source en code exécutable à exécuter par la machine. Sinon, est d'utiliser un interprète. Il exécute un programme source ligne par ligne sans pré-compilation.

Figure 01: Un programme source

Visual Basic est un exemple de langage compilé, tandis que Java est un exemple de langage interprété. Les fichiers source Visual Basic (fichiers .vb) sont compilés en code .exe, tandis que les fichiers source Java (fichiers .java) sont d'abord compilés (à l'aide de la commande javac) en bytecode (code objet contenu dans les fichiers .class), puis interprétés à l'aide de interprète java (en utilisant la commande java). Lorsque des applications logicielles sont distribuées, elles n'incluent généralement pas les fichiers source. Cependant, si l'application est open source, la source est également distribuée et l'utilisateur peut voir et modifier le code source..

Quel est le programme objet?

Le programme objet est généralement un fichier exécutable de la machine, résultant de la compilation d'un fichier source à l'aide d'un compilateur. Outre les instructions machine, elles peuvent inclure des informations de débogage, des symboles, des informations de pile, des informations de relocalisation et de profilage. Comme elles contiennent des instructions en code machine, elles ne sont pas facilement lisibles par les humains. Mais parfois, les programmes objet font référence à un objet intermédiaire entre les fichiers source et les fichiers exécutables.

Des outils appelés lieurs permettent de lier un ensemble d’objets à un exécutable (par exemple, le langage C). Comme mentionné ci-dessus, les fichiers .exe et les fichiers bytecode sont des fichiers objets générés lors de l'utilisation de Visual Basic et Java. Les fichiers .exe s'exécutent directement sur la plate-forme Windows, tandis que les fichiers en code court ont besoin d'un interpréteur pour les exécuter..

La plupart des applications logicielles sont distribuées avec l'objet ou les fichiers exécutables uniquement. Il est possible de reconvertir les fichiers objet ou les fichiers exécutables en fichiers source par décompilation. Par exemple, les outils de décompilation peuvent décompiler les fichiers java.class (bytecode) en leurs fichiers .java d'origine..

Quelle est la différence entre le programme source et le programme objet?

Le programme source est un programme lisible par l'homme écrit par un programmeur. Il est écrit dans des langages de niveau supérieur tels que Java ou C. Par conséquent, un programme source est lisible par l'homme. Ce n'est pas compréhensible par la machine.

Par contre, le programme objet est un programme exécutable sur la machine créé après la compilation d’un programme source. Il contient des langages de niveau inférieur tels que le code assembleur ou le code machine. Par conséquent, le programme objet n'est pas lisible par l'homme. C'est compréhensible par la machine.

Résumé - Programme source vs programme objet

La différence entre le programme source et le programme objet est que le programme source est un programme lisible par l'homme écrit par un programmeur, tandis que le programme objet est un programme exécutable par la machine créé en compilant un programme source..

Référence:

1. «Code source». Wikipédia, Wikimedia Foundation, 17 mai 2018. Disponible ici

2. «Code d'objet» Wikipédia, Wikimedia Foundation, 14 mai 2018. Disponible ici 

Courtoisie d'image:

1.'CodeCmmt002'Par Dreftymac (CCBY 2.5) via Wikimedia Commons