Zurück zur Übersicht

Begriff

Compiler vs. Interpreter

Development Computer Science S1
2 Quellen 0 Lernpfade 4 Backlinks enriched

Warum wichtig?

Dieser Begriff ist ein Knoten im SengakujiWorks-Wissensnetz. Nutze Level 0 für die erste Einordnung, Level 1 für Praxis, Level 2 für technische Struktur und Level 3 für Grenzen, Fallstricke und Expertenkontext.

Computer verstehen nur Nullen und Einsen (Maschinencode). Du schreibst aber Englisch (if (x > 5)). Jemand muss übersetzen. Der Compiler ist wie ein Buch-Übersetzer. Er nimmt deinen ganzen Code, liest ihn komplett, findet alle Fehler, und schreibt ein neues Buch in Maschinensprache (.exe). Erst danach kannst du das Programm starten. Vorteil: Das fertige Programm ist extrem schnell. Beispiele: C++, Go, Rust.

Merksatz: Ein Programm, das Quellcode einer Hochsprache vollständig in Maschinencode (oder Bytecode) übersetzt, bevor das Programm ausgeführt wird.


Quick-Check

  1. Warum kompiliert Python nicht?
    Python ist (meistens) interpretiert. Es gibt keinen Schritt 2. Das Programm startet sofort, aber läuft langsamer.
  2. Cross-Compilation?
    Ich arbeite auf einem Mac, will aber eine .exe für Windows bauen. Der Compiler muss Code für eine fremde CPU/OS generieren. Schwierig, aber Go macht es sehr einfach (GOOS=windows go build).
  3. Linker?
    Nach dem Kompilieren hast du viele kleine Objekt-Dateien (.o). Der Linker klebt sie zusammen zu einer einzigen ausführbaren Datei und bindet Bibliotheken ein.