Kapitel 4. Quelltextimport und Quelltexterzeugung

Umbrello UML Modeller ist ein UML Modellierungswerkzeug und sein Schwerpunkt liegt deshalb auf der Analyse und des Designs ihres Systems. Um den Übergang zwischen Design und Implementierung zu erleichtern, kann Umbrello UML Modeller Quelltext in verschiedenen Programmiersprachen erzeugen. Möchte man hingegen die UML in einem bereits existierendem C++ Projekt einsetzen, unterstützt Umbrello UML Modeller einem bei der Erstellung eines Modells des vorhandenen Systems, indem es den Quelltext einliest und die gefundenen Klassen erstellt.

Quelltexterzeugung

Umbrello UML Modeller kann Quelltext in verschiedenen Programmiersprachen auf Basis ihres UML Modells erzeugen und hilft dabei einen Anfang für die Implementierung zu schaffen. Der erzeugte Quelltext besteht aus den Klassendeklarationen, den Methoden und den Attributen. Man muss diese Hüllen lediglich ausfüllen, um die Klassenoperationen mit Funktionalität zu füllen.

Umbrello UML Modeller 2 bietet Quelltexterzeugung für ActionScript, Ada, C++, C#, D, IDL, Java™, JavaScript, MySQL, Pascal, Perl, PHP, PHP5, PostgreSQL, Python, Ruby, Tcl, Vala, und XMLSchema.

Quelltext erzeugen

Um Quelltext mit Umbrello UML Modeller zu erzeugen, muss man zuerst ein Modell laden, das mindestens eine Klasse enthält. Wenn man Quelltext erzeugen will, muss man den Assistent für Quelltext-Erstellung ... aus dem Menü Quelltext auswählen. Dadurch wird der Assistent gestartet, der dann durch den Prozess zur Quelltexterzeugung führt.

Im ersten Schritt muss man die Klassen auswählen, für die Quelltext erzeugt werden soll. Am Anfang sind alle Klassen des Modells ausgewählt und man kann nun einzelne entfernen. Dazu muss man sie aus der rechten Liste in die linke Liste verschieben.

Im folgenden Schritt des Assistenten kann man die Parameter des Quelltextgenerators verändern. Folgende Parameter sind verfügbar:

Parameter für die Quelltexterzeugung in Umbrello UML Modeller

Parameter für die Quelltexterzeugung in Umbrello UML Modeller

Generierungsoptionen

Umfang Quelltextkommentare

Der Parameter Erzeugt Dokumentations-Kommentare, selbst wenn diese leer sind. weist den Quelltextgenerator an, Kommentare der Form /** bla */ einzufügen, selbst wenn diese leer sind. Hat man die Klassen, Methoden und Attribute im Modell dokumentiert, fügt die Quelltexterzeugung diese Kommentare im Doxygen Format mit ein, egal was an dieser Stelle ausgewählt wurde. Ist dieser Parameter aktiviert, werden im Unterschied allerdings für alle Klassen, Methoden und Attribute Platzhalter eingefügt, selbst wenn diese nicht im Modell dokumentiert wurden. Man sollte diese dann direkt im Quelltext in den bereits vorhandenen Platzhaltern dokumentieren.

Erzeugt Kommentare für Abschnitte, selbst wenn diese leer sind.: Umbrello UML Modeller schreibt Kommentare in den Quelltext um die verschiedenen Bereiche einer Klasse zu trennen. So würde zum Beispiel public methods oder Attributes vor den entsprechenden Abschnitten eingefügt werden. Wurde dieser Parameter aktiviert, wird für jeden Abschnitt ein entsprechendes Kommentar eingefügt, selbst dann, wenn der Abschnitt leer ist. So würde zum Beispiel das Kommentar protected methods eingefügt werden, selbst wenn keine geschützten Methoden in der Klasse existieren.

Ordner

Verzeichnis für alle zu erzeugenden Dateien: Hier wählt man das Verzeichnis aus, in dem der erzeugte Quelltext abgelegt werden soll.

Der Parameter Einbeziehung der Header-Dateien aus Verzeichnis erlaubt es einen Kopf an den Anfang jeder erzeugten Datei einzufügen. Diese Dateiköpfe können zum Beispiel Urheberhinweise oder Lizenzinformationen enthalten, sowie Variablen, die während der Quelltexterzeugung entsprechend ersetzt werden. Man sollte einen Blick auf die Vorlagedateien für Dateiköpfe werfen, die mit Umbrello UML Modeller ausgeliefert werden. Dort kann man sehen, wie man zum Beispiel mit den Variablen das aktuelle Datum oder einen Namen einfügen kann.

Vorgaben für Überschreibung

Dieser Parameter legt das Verhalten von Umbrello UML Modeller fest, wenn es eine Datei während der Quelltexterzeugung anlegen will, die im Zielverzeichnis bereits existiert. Umbrello UML Modeller kann vorhandene Dateien nicht modifizieren. Man kann wählen zwischen dem Überschreiben der existierenden Datei, dem Nachfragen, was passieren soll, und der Auswahl eines anderen Dateinamens durch Umbrello UML Modeller. Soll Umbrello UML Modeller einen anderen Dateinamen finden, dann hängt Umbrello UML Modeller ein Suffix an die entsprechende Datei an.

Sprache

Umbrello UML Modeller wählt als Sprache für die Quelltexterzeugung die momentan als aktive Sprache gewählte aus. Man kann allerdings im Quelltextassistenten eine andere Sprache auswählen.

Quelltexterzeugung

Der dritte und letzte Schritt des Assistenten zeigt den Status der eigentlichen Quelltexterzeugung. Man muss lediglich auf die Schaltfläche Erzeugen klicken, damit die entsprechenden Dateien mit den Klassen angelegt werden.

Es ist zu beachten, dass die gesetzten Parameter nur für die aktuelle Quelltexterzeugung gültig sind. Beim nächsten Aufruf des Assistenten muss man alle Parameter, wie Header-Datei Verzeichnis und Vorgaben für Überschreibung, neu einstellen. Man kann allerdings die Voreinstellungen dauerhaft über den Quelltexterzeugung Abschnitt in den Umbrello UML Modeller Einstellungen verändern. Diese Einstellungen erreicht man über EinstellungenUmbrello UML Modeller einrichten ....

Hat man die Standardeinstellungen für die Quelltexterzeugung bereits richtig eingestellt, kann man die Quelltexterzeugung ohne den entsprechenden Assistenten direkt starten. Dazu wählt man Erzeuge alle Quelltexte aus dem Menü Quelltext. Dies erzeugt den Quelltext aller Klassen des Modells mit den aktuellen Einstellungen wie Ausgabeverzeichnis und Vorgaben für Überschreiben. Man sollte deshalb vorsichtig damit umgehen.