Infos Home | Impressum | Original Artikel & Autoren Liste


Codegenerator (Softwaretechnik)

Codegeneratoren in der Softwaretechnik sind Computerprogramme, die Quellcode von Computerprogrammen erzeugen. Sie werden im Rahmen des Softwareerstellungsprozesses vor dem Kompiliervorgang eingesetzt.

Die Steuerung eines Codegenerators erfolgt dabei entweder manuell, also direkt durch den Programmierer, oder automatisiert über eine spezielle formale Sprache, die die Formulierung des Problems im Vergleich zur Zielsprache stark vereinfacht.

Automatisierte Codegeneratoren

Einfache Varianten arbeiten auf der Basis der Quelldateien und ersetzen so genannte Makroaufrufe mit vorgefertigten Textbausteinen. Der Präprozessor ist hierfür ein Beispiel. Andere Varianten generieren vollstängig neue Quelldateien, indem sie Metainformationen verarbeiten. Metainformationen beschreiben den Vorgang der Codeerzeugung und/oder Eigenschaften des zu erstellenen Programmcode auf einer höheren Ebene (siehe auch Model Driven Architecture) und liegen entweder in separaten Dateien (wie beispielsweise beim Parser-Generator) oder in Form von so genannten Meta-Tags innerhalb der Kommentarbereiche des bestehenden Programmcodes vor. Der generierte Code wird, anders als bei manuell gesteuerten Codegeneratoren, unter Umständen vor jedem Kompiliervorgang neu erzeugt.

Manuell gesteuerte Codegeneratoren

Manuell gesteuerte Codegeneratoren sind Teil einer Integrierten Entwicklungsumgebung (IDE) oder eines CASE-Werkzeugs. Häufig sind sie über eine grafische Benutzeroberfläche ("GUI") bedienbar. Der Programmierer kann dabei seinen Programmcode interaktiv, und zwar entweder ausschließlich durch Nutzung des Codegenerators oder ergänzt durch manuelle Programmierung, zusammensetzen. Neben der reinen Codegenerierung bieten so genannte Round-Trip-Codegeneratoren auch das Einlesen und eine zusammengefasste grafische Darstellung des manuell erstellten sowie des generierten Programmcodes an.


Der Ursprungsartikel stammt von der deutschsprachigen Wiki pedia (siehe oben: "Original Artikel & Autoren Liste").
Der Text steht unter der GNU Freie Dokumentation Lizenz.