Quellcode: Was steckt hinter dem Bauplan jeder Software?

Quellcode (englisch: Source Code) ist der für Menschen lesbare Text, in dem Entwickler ein Programm schreiben. Er besteht aus Anweisungen in einer Programmiersprache wie Python, Java oder C#. Erst ein Compiler oder Interpreter übersetzt ihn in Befehle, die ein Computer ausführen kann.

Was ist Quellcode?

Quellcode beschreibt Schritt für Schritt, was eine Software tun soll. Entwickler schreiben ihn in normalen Textdateien. Jede Programmiersprache folgt dabei eigenen Regeln für Schreibweise und Aufbau.

Ein Vergleich hilft: Quellcode verhält sich zur fertigen Software wie ein Rezept zum fertigen Gericht. Das Rezept legt Zutaten und Arbeitsschritte fest. Wer nur das Gericht vor sich hat, kann das Rezept kaum noch exakt nachvollziehen. Genau so lässt sich aus einem fertigen Programm der ursprüngliche Quellcode nur schwer zurückgewinnen.

Ein einfaches Beispiel in Python:

if lagerbestand < 10:
    print(“Bitte nachbestellen”)

Die zwei Zeilen prüfen den Lagerbestand und geben einen Hinweis aus, sobald er unter zehn fällt. Echte Anwendungen bestehen aus Tausenden bis Millionen solcher Zeilen.

Wie wird aus Quellcode ein Programm?

Prozessoren verstehen keine Programmiersprache, sondern nur Maschinencode aus Nullen und Einsen. Zwei Wege führen vom einen zum anderen:

  • Compiler: Er übersetzt den gesamten Quellcode vorab in Maschinencode. Heraus kommt eine ausführbare Datei, etwa eine .exe unter Windows. Sprachen wie C, C++, Go oder Rust arbeiten so.
  • Interpreter: Er übersetzt den Code erst während der Ausführung, Zeile für Zeile. Python, PHP und JavaScript laufen typischerweise auf diesem Weg.
quellcode-grafik

Viele moderne Sprachen kombinieren beide Ansätze. Java und C# übersetzen den Quellcode zunächst in einen Zwischencode, den eine Laufzeitumgebung später ausführt.

Für Unternehmen hat das eine praktische Folge: Wer nur die ausführbare Datei besitzt, kann die Software nutzen, aber kaum weiterentwickeln. Für Änderungen braucht es den Quellcode.

Was ist der Unterschied zwischen Open Source und Closed Source?

Der Unterschied liegt darin, wer den Quellcode sehen und verändern darf.

  • Open Source: Der Quellcode ist öffentlich einsehbar. Eine Lizenz regelt, wer ihn nutzen, ändern und weitergeben darf. Bekannte Beispiele sind Linux, Firefox, LibreOffice und Git.
  • Closed Source (proprietäre Software): Der Hersteller hält den Quellcode unter Verschluss. Kunden erhalten nur das fertige Programm und eine Nutzungslizenz. Beispiele sind Microsoft Windows oder die meisten ERP-Systeme.

Open Source heißt nicht automatisch kostenlos für jeden Zweck. Lizenzen wie die GPL verlangen etwa, dass veränderte Versionen ebenfalls offen bleiben. Lizenzen wie MIT oder Apache 2.0 erlauben dagegen fast jede Nutzung, auch in kommerziellen Produkten. Unternehmen sollten deshalb vor dem Einsatz prüfen, welche Lizenz gilt.

Wem gehört der Quellcode bei Auftragsentwicklung?

Diese Frage überrascht viele Auftraggeber. In Deutschland schützt das Urheberrecht Software als Werk. Das Urheberrecht selbst bleibt beim Entwickler, übertragen lässt es sich nicht. Der Auftraggeber erhält nur Nutzungsrechte, und zwar in dem Umfang, den der Vertrag festlegt. Bei Angestellten gelten Sonderregeln: Hier stehen die Nutzungsrechte in der Regel dem Arbeitgeber zu.

Wer eine Individualsoftware beauftragt, sollte deshalb vertraglich klären:

  • Herausgabe des Quellcodes: Erhalten Sie den Code, oder nur das fertige Programm?
  • Umfang der Nutzungsrechte: Dürfen Sie den Code ändern, weiterentwickeln und von einem anderen Dienstleister pflegen lassen?
  • Exklusivität: Darf der Entwickler denselben Code auch für andere Kunden verwenden?
  • Dokumentation: Gehören technische Dokumentation und Zugänge zum Repository zum Lieferumfang?

Gibt der Hersteller den Quellcode nicht heraus, bietet sich eine Hinterlegung an (Source Code Escrow). Ein neutraler Treuhänder verwahrt den Code und gibt ihn frei, wenn der Hersteller etwa insolvent wird. Für verbindliche Vertragsfragen empfiehlt sich eine juristische Beratung.

Wie schützen Unternehmen ihren Quellcode?

Quellcode zählt oft zu den wertvollsten Daten eines Unternehmens. Gelangt er in falsche Hände, können Angreifer gezielt Schwachstellen suchen oder Wettbewerber Know-how übernehmen.

  • Versionsverwaltung nutzen: Ein zentrales Repository mit Git macht jede Änderung nachvollziehbar und verhindert verstreute Kopien.
  • Zugriffe beschränken: Nur wer am Projekt arbeitet, erhält Zugriff. Zwei-Faktor-Authentifizierung schützt die Konten.
  • Keine Geheimnisse im Code: Passwörter und API-Schlüssel gehören in einen Secrets-Manager, nicht in den Quellcode.
  • Code-Reviews einführen: Eine zweite Person prüft jede Änderung, bevor sie in den Hauptzweig gelangt.
  • Automatisch prüfen: Werkzeuge für statische Codeanalyse finden Sicherheitslücken, bevor die Software live geht.
  • Backups anlegen: Auch Repositories bei Cloud-Anbietern brauchen eine eigene Sicherung.

Häufige Fragen zum Quellcode

Was ist der Unterschied zwischen Quellcode und Quelltext?
Keiner. Beide Begriffe meinen dasselbe, ebenso Programmcode oder Source Code.

Kann man den Quellcode einer Webseite ansehen?
Teilweise. Im Browser zeigt die Funktion „Seitenquelltext anzeigen“ HTML, CSS und JavaScript. Den Code auf dem Server, etwa in PHP, sehen Besucher dagegen nicht.

Kann man aus einem Programm den Quellcode zurückgewinnen?
Nur eingeschränkt. Dieses Reverse Engineering liefert meist schwer lesbaren Code ohne Kommentare und originale Namen. Lizenzverträge verbieten es häufig.

Schreibt KI heute Quellcode?
Ja. KI-Assistenten erzeugen Code-Vorschläge oder ganze Funktionen. Entwickler prüfen und testen diesen Code aber weiterhin selbst, bevor er in Produktion geht.

Was ist Legacy Code?
So heißt alter Quellcode, den ein Unternehmen noch nutzt, aber kaum noch versteht oder pflegen kann. Oft fehlen Dokumentation und die ursprünglichen Entwickler.

Verwandte Begriffe

Programmiersprache, Compiler, Interpreter, Maschinencode, Open Source, Git, Repository, Source Code Escrow, Code-Review, Legacy Code, API

Das muss man gelesen haben?

Behalten Sie ihr Wissen nicht für sich und teilen Sie diesen Beitrag.

Back to top