Différence entre le programme source et le programme objet

Anonim

Programme source et programme objet

Le programme source et le programme objet sont deux types de programmes trouvés dans la programmation informatique. Le programme source est généralement un programme avec des instructions machine lisibles par l'homme, écrites par un programmeur. Le programme objet est généralement un programme exécutable par une machine créé en compilant un programme source.

Qu'est-ce que le programme source?

Le programme source est un code écrit par un programmeur utilisant généralement un langage de niveau supérieur, facilement lisible par les humains. Les programmes sources contiennent généralement des noms de variables significatifs et des commentaires utiles pour le rendre plus lisible. Un programme source ne peut pas être exécuté directement sur une machine. Pour l'exécuter, le programme source est compilé à l'aide d'un compilateur (un programme qui transforme les programmes source en code exécutable). Alternativement, en utilisant un interpréteur (un programme qui exécute un programme source ligne par ligne sans précompilation), un programme source peut être exécuté à la volée. 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. exe, tandis que les fichiers source Java (fichiers.java) sont d'abord compilés (en utilisant la commande javac) en bytecode (code objet contenu dans les fichiers de classe), puis interprétés en utilisant l'interpréteur java. Lorsque les 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.

Qu'est-ce que le programme Object?

Le programme objet est généralement un fichier exécutable de la machine, qui est le résultat de la compilation d'un fichier source à l'aide d'un compilateur. Outre les instructions machine, ils peuvent inclure des informations de débogage, des symboles, des informations sur les piles, des informations de déplacement et de profilage. Comme ils contiennent des instructions dans le code machine, ils ne sont pas facilement lisibles par les humains. Mais parfois, les programmes d'objet font référence à un objet intermédiaire entre les fichiers source et exécutable. Les outils connus sous le nom de liens sont utilisés pour 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 produits lors de l'utilisation de Visual Basic et de Java respectivement … Les fichiers exe sont directement exécutables sur la plateforme Windows, alors que les fichiers bytecode nécessitent un interpréteur pour l'exécution. La plupart des applications logicielles sont distribuées uniquement avec l'objet ou les fichiers exécutables. Les fichiers objet ou exécutables peuvent être reconvertis en fichiers source d'origine par décompilation. Par exemple, java. les fichiers de classe (bytecode) peuvent être décompilés en utilisant les outils de Decompiler à leur origine.fichiers java.

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

Le programme source est un programme écrit par un programmeur, tandis qu'un programme objet est généré par un compilateur en utilisant un ou plusieurs fichiers sources en entrée. Les fichiers sources sont écrits dans des langages de niveau supérieur tels que Java ou C (donc facilement lisibles par les humains), mais les programmes objets contiennent généralement des langages de niveau inférieur tels que l'assemblage ou le code machine. Les fichiers sources peuvent être compilés ou interprétés pour être exécutés. Les décompilateurs peuvent être utilisés pour convertir des programmes d'objets en leur fichier source d'origine. 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 se passe 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.