Ich bin ein Anfänger in der Programmierung und habe kein gutes Verständnis für die Terminologie. Ich möchte wissen, ob Quellcode, der in einer kompilierten Sprache wie C oder C ++ geschrieben wurde, als Programm betrachtet wird. Wenn nicht, kann jemand erklären, warum?
terminology
source-code
Othman
quelle
quelle
Antworten:
Siehe den Wikipedia-Eintrag für Programm : (Ich habe die Fettschrift hinzugefügt )
Das "Programm" ist also der Befehlssatz, den der Computer ausführt, und der "Quellcode" ist die für Menschen lesbare Version dieser Anweisungen.
quelle
Ja ist es.
ABER
Die Gefahr bei dieser Denkweise besteht darin, dass "der Computer mein Programm ausführt, ich mein Programm in [z. B.] C schreibe, also dass der Quellcode Anweisungen an den Computer sind".
Und das haben zu viele von uns im 20. Jahrhundert zu viele Jahrzehnte lang gedacht. Was wir in den letzten zehn Jahren gelernt haben, ist, dass andere Programmierer das Hauptpublikum des Quellcodes sind . Also ja, diese Quelle ist das Programm, genauso wie Sie ein Programm im Theater bekommen würden, das anderen Leuten erzählt, was passiert. Das Schöne am Quellcode ist, dass es nicht nur das Programm ist, sondern auch eine Reihe von Anweisungen für den Computer ...
quelle
Ob es ist oder nicht, hängt vom Kontext ab. Denken Sie so darüber nach. Ich vergesse, wie der formale Name für das Konzept lautet, aber es gibt eine Sprachtheorie, die besagt, dass Wörter eine Bedeutung haben, die nicht beschreibt, was etwas ist, sondern was es nicht ist . Ein roter Apfel ist nicht rot, weil er rot ist, sondern weil er nicht blau, nicht grün usw. ist. Ignorieren Sie, ob das stimmt oder nicht, sondern nehmen Sie für eine Sekunde an und denken Sie in diesem Zusammenhang über die Frage nach.
Wenn wir also an dieses Konzept denken, können wir unseren Quellcode mit einer Blaupause eines Hauses vergleichen. Wenn Sie sich die Blaupause aus einem Stapel anderer Blaupausen ansehen und fragen, ob dies ein Haus ist, und die anderen Blaupausen für gewerbliche Gebäude, Brücken usw. gelten, lautet die Antwort Ja. Weil die Blaupause nicht all das andere Zeug darstellt und der Hausaspekt sie von den anderen Blaupausen unterscheidet.
Offensichtlich ist eine Blaupause eines Hauses jedoch nicht dasselbe wie ein tatsächliches Haus aus Holz und Trockenbau, in dem Sie stehen können. Es gibt Kontexte, in denen der Unterschied zwischen der Blaupause und dem tatsächlichen Haus von Bedeutung ist. Es gibt einen Unterschied zwischen dem Plan und dem Ergebnis.
So wie der Quellcode eines Programms in einer kompilierten Sprache dem Entwurf ähnelt, wenn Sie ihn mit Bibliotheken, Kernelmodulen usw. vergleichen, sind der Quellcode und das Programm konzeptionell ein und dasselbe. Wenn Sie sich jedoch ansehen, wie Software kompiliert, entworfen und bereitgestellt wird, sind die beiden nicht identisch. Auch hier gibt es einen Unterschied zwischen dem Plan und dem Ergebnis.
tl; dr: Manchmal wird das, was etwas ist und was es darstellt, als dasselbe angesehen, aber manchmal nicht.
quelle
Quellcode ist ein allgemeiner Begriff für ursprüngliche Codezeilen (von Menschen verfasst). Andere Arten von Code, die keine Quelle sind, können durch Übersetzung oder durch ein anderes Programm erstellt werden.
Das geistige Eigentum ist noch umfassender und kann sowohl Quellcode als auch anderen Code oder Daten enthalten.
Ein Programm unterscheidet sich in seiner Vollständigkeit von anderem Code (Quelle oder anderem). Ein Programm ist ein Code, der so vollständig ist, dass er ausgeführt werden kann (oder ausgeführt werden soll). Nicht jeder Code (Quelle oder anderweitig) stellt eine ausreichende Vollständigkeit für die Ausführung dar. Bibliotheken zum Beispiel sollen mit anderem Code kombiniert und von diesem verwendet werden und werden daher im Allgemeinen nicht als Programm betrachtet, da sie nicht ausgeführt werden können (sollen).
Diese Vollständigkeit bedeutet manchmal, ein zu haben
main
, das von einem Betriebssystem als Einstiegspunkt für das Programm verwendet wirdWenn ein Programm ausgeführt wird, wird dies im Allgemeinen als Prozess bezeichnet.
quelle
Der Quellcode ist die bevorzugte Form der Software, an der menschliche Softwareentwickler arbeiten . Die Erkenntnis ist, dass Softwareentwicklung ein sozialer Prozess ist. Quellcode ist also ein sozialer Begriff. Sie schreiben Quellcode hauptsächlich für Menschen (Ihre Kollegen oder sogar Sie selbst, die in wenigen Monaten an demselben Programm arbeiten), nicht für Computer. Bei einem in C codierten Programm handelt es sich häufig (aber nicht immer) um
.c
C-Dateien und.h
Header-Dateien, aber das Makefile ist auch Quellcode. Manchmal werden jedoch Metaprogrammiertechniken verwendet: Einige Programme generieren C-Code und dann die EingabeDieser Generator wird als Quellcode betrachtet (selbst wenn die Ausgabe dieses Generators C-Code ist). Zwei Beispiele: Sie können einen Parser-Generator (wie GNU Bison ) zum Parsen von Problemen verwenden, dann ist die Eingabedatei.y
dieses Generators Quellcode. Oder Sie schreiben ein winziges awk- oder gawk- Skript, um aus einer SQLite- Datenbank einige Daten zu extrahieren, die beispielsweise in eine großeenum
Deklaration in einem generierten Header umgewandelt werden. dann würde diese Datenbank Quellcode enthalten!Ein Computerprogramm ist im Gegensatz zu computerbezogenen es läuft. Es wird in der Regel erhalten Kompilieren einige Quellcode (geschrieben in irgendeiner Programmiersprache , und diese sind Spezifikationen in englischer Sprache geschrieben in technischen Unterlagen -siehe n1570 Entwurf für C11 in ein binäres -, keine Software - Tools) ausführbar .
Lesen Sie auch über freie Software . Tauchen Sie ein in den Quellcode bestehender freier Softwareprojekte ( einige finden Sie unter github oder sourceforge ).
quelle