|
Der C++ Developer unterstützt Sie in der Designphase und generiert aus dem Modell ca. 70% des für die Applikation benötigten C++ Codes. Dabei erzeugt er nicht nur die
Klassengerüste, sondern auch den Code für die Assoziationen, Attributinitialisierung, Parameterübergabe, Constraints, Pre- und Postconditions, Datenintegritätsprüfungen, Kon-und Destruktoren,
Standardzugriffsmethoden und vieles mehr. Der generierte Code erfüllt hohe Anforderungen an Wartbarkeit, Sicherheit und Effizienz.
Wenn Sie den Code für die Logik der Methoden in den zugehörigen UML-Notes ablegen, können sogar 100% Codegenerierung
realisiert werden. Änderungen im Methoden-Body in den generierten Source-Dateien werden erkannt und im Modell aktualisiert. Damit können Sie Änderungen entweder im Modell oder in den Sourcen vornehmen und trotzdem wird eine dauerhafte
Konsistenz von Modell und Sourcecode sichergestellt
Objecteering/UML generiert die Sourcedateien und Makefiles entsprechend der Klassen- und Package-Struktur im Modell. Ohne weitere Zwischenschritte kann die Compilierung
unmittelbar nach der Codegenerierung vom C++ Developer Modul aus angestossen werden.
Für die C++ Basistypen stehen verschiedene Libraries (STL,MFC) zur Auswahl. Selbstverständlich können auch eigene Libraries eingbunden werden.
Zusätzlich sind eine Reihe von vorgefertigten Design Patterns (nach GoF) vorhanden. Diese bewährten
Entwurfsmuster können Sie auf Ihr Modell anwenden. So stellt z.B. das Singleton-Design Pattern durch geeignete automatisierte Modifikation einer Klasse sicher, dass nur eine Instanz dieser Klasse erzeugt
werden kann (siehe Abbildung). Die Design Pattern transformieren Ihr Modell und legen dazu neue Klassen, Attribute und Methoden an. Dabei
wird auch operationeller C++ Code erzeugt und im Modell abgelegt. Dieser Code wird später Bestandteil der aus dem UML Modell generierten C++ Applikationen. Folgende Design Pattern sind vorimplementiert:
|