Beispiel: Transformieren von Java in C++
In diesem Beispiel wird gezeigt, wie Sie eine einfache Transformation von einem Java-Modell in ein C++-Modell durchführen. Außerdem erfahren Sie, wie Sie anhand des transformierten (Ziel)modells C++-Code generieren.
1.Öffnen Sie die Beispieldatei Bank_Java.ump aus dem Ordner C:\Benutzer\<Benutzername>\Dokumente\Altova\UModel2025\UModelExamples.
2.Klicken Sie im Menü Projekt auf Modelltransformation.
3.Wenn Sie aufgefordert werden, ein Quellpaket auszuwählen, wählen Sie den Namespace "bankview" aus. Der vollständige Pfad zu diesem Paket im Fenster "Modell-Struktur" lautet Root \ DesignView \ BankView \ com \ altova \ bankview.
4.Klicken Sie auf Weiter. Wenn Sie aufgefordert werden, ein Zielpaket auszuwählen, aktivieren Sie das Kontrollkästchen In neues Paket transformieren..
5.Kicken Sie auf Weiter. Wählen Sie im daraufhin angezeigten Dialogfeld als Transformationsart Java in C++. Informationen zu allen anderen Einstellungen finden Sie unter Transformationseinstellungen.
6.Klicken Sie auf Weiter. Daraufhin wird das Dialogfeld "Typ-Mapping" angezeigt, wo Sie die Typ-Entsprechungen zwischen Java und C# definieren können. Klicken Sie auf Fertig stellen, um die Standardeinstellungen zu übernehmen.
7.Wenn angezeigt wird, dass das UModel Model Transformation Profile inkludiert wird, klicken Sie auf OK.
Die Transformation wird durchgeführt und im Projekt werden die folgenden Änderungen vorgenommen:
•Im Zielmodell wird ein Paketdiagramm namens "Modelltransformation von bankview in C++-Ziel" generiert und automatisch geöffnet. In diesem Diagramm wird die soeben durchgeführte Transformation dargestellt. Bei Bedarf können Sie darin die zuvor definierten Einstellungen ändern, siehe Transformieren von UML-Modellen.
•Das Fenster "Modell-Struktur" enthält nun ein Paket namens "C++-Ziel". Dieses Paket enthält alle anhand des Java-Quellmodells transformierten und für C++ angepassten Elemente. Wenn Sie z.B. das Diagramm "BankView Main" öffnen, werden Sie sehen, dass es anstelle des Java-Typs boolean den Typ bool enthält.
•Das Paket "Component View" im Fenster "Modell-Struktur" enthält eine neue Komponente "C++-Ziel". Diese Komponente wurde automatisch generiert, da die Einstellung Komponentenrealisierungen und Komponenten generieren aktiviert war. In der neuen Komponente sind die Code Engineering-Einstellungen für das Zielmodell (in diesem Fall C++) definiert.
Sie können nun anhand des Zielmodells C++-Code generieren:
1.Klicken Sie im Paket "Component View" auf die Komponente "C++-Ziel".
2.Gehen Sie im Fenster "Eigenschaften" zur Eigenschaft Verzeichnis und geben Sie das Verzeichnis ein, in dem der C++-Code generiert werden soll (z.B. C:\Bank_Sample\CPP, vorausgesetzt, dieses Verzeichnis existiert).
3.Klicken Sie mit der rechten Maustaste auf das C++-Zielpaket und wählen Sie den Befehl Code Engineering | Merge Programmcode von UModel-Paket.
Im Fenster "Meldungen" wird das Ergebnis der C++-Codegenerierung angezeigt:
Nähere Informationen zum Generieren von Code anhand eines UModel-Projekts finden Sie unter Generieren von Programmcode.