[ai hinweis="Ein knallroter, glänzender Apfel mit einem kleinen, grünen Blatt und einem sichtbaren Tautropfen an der Seite."]
Zum Inhalt springen

Compiler (Programm)

Onmylist.de | Aktualisiert: 18. Oktober 2024

Ein Compiler ist ein Programm oder eine Reihe von Programmen, die in einer Programmiersprache geschriebenen Quellcode in eine andere Computersprache umwandeln, in der Regel, um ein ausführbares Programm zu erstellen. Compiler werden in der Regel verwendet, um Quellcode, der in Hochsprachen wie Java, C++ und Python geschrieben wurde, in einfache Maschinensprachen umzuwandeln, die vom Prozessor des Geräts, auf dem sie laufen, ausgeführt werden können.

Compiler erfüllen bei der Softwareentwicklung zwei Hauptfunktionen: Erstens erleichtern sie es den Entwicklern, schnell korrekten Code zu schreiben, und zweitens sorgen sie für eine effiziente Nutzung der Hardwareressourcen, indem sie von Menschen lesbare Anweisungen in rohen Maschinencode übersetzen (kleinere Dateien und schnellere Ausführung). Auf diese Weise tragen Compiler dazu bei, die Entwicklungszeit und -kosten erheblich zu senken. Außerdem bieten sie verschiedene Optimierungen gegenüber nicht kompilierten Programmen, wie z.B. schnellere Ladezeiten und verbesserte Sicherheit durch höhere Qualitätskontrollmaßnahmen während der Kompilierung – in einigen Fällen werden potenzielle Probleme bereits vor Beginn der Laufzeit beseitigt.

Im Kern nehmen Compiler den Quellcode des Benutzers (z.B. .cpp-Dateien) als Eingabe und interpretieren ihn mithilfe einer lexikalischen Analyse eine syntaktische Einheit nach der anderen. Dieser Prozess wird als Lexing oder Tokenisierung bezeichnet, weil er Token verwendet, um Elemente wie Wörter, Phrasen oder Symbole aus der/den ursprünglichen Quelldatei(en) darzustellen. Das Ergebnis dieser Phase ist – nach der Beseitigung von Syntaxfehlern beim Parsen – ein Strom von Token, die durch Backend-Aktivitäten wie Optimierung (bei der redundante/überflüssige Operationen entfernt werden), semantische Evaluierung (um sicherzustellen, dass die Argumente dem erwarteten Typ entsprechen) und zielarchitekturabhängige Befehlsauswahl (maschinenspezifische Assemblerbefehle) weiterverarbeitet werden können. Letztendlich führen diese Aktivitäten zur Erstellung eines Objektcodes, der auf jedem Gerät mit kompatiblen Hardwarespezifikationen ausgeführt werden kann.

Relevante Glossareinträge
Hijacking (SEO)

Hijacking ist im Zusammenhang mit SEO (Search Engine Optimization) eine Form von bösartiger Aktivität, bei der versucht wird, den Suchmaschinenverkehr von legitimen Webseiten auf weniger

Weiterlesen »
Conversion Tracking

Conversion Tracking ist ein Schlüsselelement jeder erfolgreichen Marketingstrategie. Dabei handelt es sich um den Prozess der Messung und Analyse von Verbraucherinteraktionen auf Websites, mobilen Anwendungen,

Weiterlesen »
Verbraucher

Ein Verbraucher wird in einem Marketingkontext als eine Person definiert, die Waren und Dienstleistungen kauft, nutzt und entsorgt. Sie sind die Endverbraucher von Produkten oder

Weiterlesen »
Hypertext

Hypertext ist im Zusammenhang mit SEO eine entscheidende Komponente, die bestimmt, wie Suchmaschinenalgorithmen Websites einstufen und indizieren. Hypertext bezieht sich auf den Text auf einer

Weiterlesen »
Messenger Marketing

Messenger-Marketing ist eine Art von digitaler Marketingstrategie, die Messaging-Apps wie Facebook Messenger, WhatsApp und WeChat nutzt, um Beziehungen zu Kunden aufzubauen. Das Hauptziel des Messenger-Marketings

Weiterlesen »
Audience Development

Audience Development ist der Prozess, der darauf abzielt, ein Publikum zu gewinnen, zu inspirieren und anzusprechen. Dazu gehört die Erforschung der Bedürfnisse und des Verhaltens

Weiterlesen »