Unterschied zwischen Quellprogramm und Objektprogramm

Anonim

Quellprogramm gegen Objektprogramm

Quellprogramm und Objektprogramm sind zwei Arten von Programmen, die in der Computerprogrammierung gefunden werden. Das Quellprogramm ist normalerweise ein Programm mit von einem Programmierer geschriebenen, von einem Menschen lesbaren Maschinenanweisungen. Objektprogramm ist normalerweise ein ausführbares Programm, das durch das Kompilieren eines Quellprogramms erstellt wird.

Was ist Quellprogramm?

Quellprogramm ist ein Code, der von einem Programmierer geschrieben wird, der normalerweise eine höhere Sprache verwendet, die von den Menschen leicht lesbar ist. Quellprogramme enthalten normalerweise aussagekräftige Variablennamen und hilfreiche Kommentare, um sie besser lesbar zu machen. Ein Quellprogramm kann nicht direkt auf einer Maschine ausgeführt werden. Um es auszuführen, wird das Quellprogramm unter Verwendung eines Compilers kompiliert (ein Programm, das Quellprogramme in ausführbaren Code umwandelt). Alternativ dazu kann unter Verwendung eines Interpreters (ein Programm, das ein Quellprogramm Zeile für Zeile ohne Vorkompilierung ausführt) ein Quellenprogramm ausgeführt werden. Visual Basic ist ein Beispiel für eine kompilierte Sprache, während Java ein Beispiel für eine interpretierte Sprache ist. Visual Basic-Quelldateien (.vb-Dateien) werden kompiliert. Java-Quelldateien (.java-Dateien) werden zuerst (mit javac-Befehl) zu Bytecode (ein Objektcode in.class-Dateien) kompiliert und dann mit dem Java-Interpreter interpretiert. Wenn Softwareanwendungen verteilt werden, enthalten sie normalerweise keine Quelldateien. Wenn es sich bei der Anwendung jedoch um Open Source handelt, wird die Quelle ebenfalls verteilt und der Benutzer kann den Quellcode ebenfalls sehen und ändern.

Was ist ein Objektprogramm?

Objektprogramm ist normalerweise eine ausführbare Maschine, die das Ergebnis der Kompilierung einer Quelldatei mit einem Compiler ist. Neben Maschinenanweisungen können sie Debug-Informationen, Symbole, Stapelinformationen, Umlagerungs- und Profilierungsinformationen enthalten. Da sie Anweisungen im Maschinencode enthalten, sind sie für Menschen nicht leicht lesbar. Manchmal jedoch beziehen sich Objektprogramme auf ein Zwischenobjekt zwischen Quell- und ausführbaren Dateien. Werkzeuge, die als Linker bekannt sind, werden verwendet, um eine Menge von Objekten in einer ausführbaren Datei (zB C-Sprache) zu verknüpfen. Wie oben erwähnt. Exe-Dateien und Bytecode-Dateien sind Objektdateien, die bei der Verwendung von Visual Basic bzw. Java erstellt werden. Exe-Dateien sind direkt auf der Windows-Plattform ausführbar, während Bytecode-Dateien zur Ausführung einen Interpreter benötigen. Die meisten Softwareanwendungen werden nur mit dem Objekt oder den ausführbaren Dateien verteilt. Objekt- oder ausführbare Dateien können durch Dekompilierung in ihre ursprünglichen Quelldateien zurück konvertiert werden. Zum Beispiel Java. Klassendateien (Bytecode) können mit Decompiler-Werkzeugen im Original dekompiliert werden.Java-Dateien.

Was ist der Unterschied zwischen Quellprogramm und Objektprogramm?

Quellprogramm ist ein Programm, das von einem Programmierer geschrieben wird, während ein Objektprogramm von einem Compiler erzeugt wird, das eine oder mehrere Quelldateien als Eingabe verwendet. Quelldateien werden in höheren Sprachen wie Java oder C geschrieben (so dass sie für Menschen leicht lesbar sind), aber Objektprogramme enthalten gewöhnlich niedrigere Sprachen wie Assembly oder Maschinencode (so dass sie nicht für Menschen lesbar sind). Quelldateien können entweder kompiliert oder zur Ausführung interpretiert werden. Decompiler können verwendet werden, um Objektprogramme in seine ursprüngliche Quelldatei (en) zurück zu konvertieren. Es ist wichtig zu beachten, dass die Begriffe Quellprogramm und Objektprogramm als relative Begriffe verwendet werden. Wenn Sie ein Programmtransformationsprogramm (wie einen Compiler) verwenden, geht es um ein Quellprogramm, und was herauskommt, ist ein Objektprogramm. Ein von einem Werkzeug erzeugtes Objektprogramm kann daher eine Quelldatei für ein anderes Werkzeug werden.