Altova UModel 2025 Enterprise Edition

Programmcode kann anhand eines neuen und eines mit Reverse Engineering erstellten Sequenzdiagramms generiert werden, allerdings nur für ein Sequenzdiagramm, das mit der "Hauptoperation" verknüpft ist.

 

Beim Reverse Engineering werden Standardelemente des Sequenzdiagramms, wie z.B. CombinedFragments Codierungselementen (z.B. "if"  Anweisungen, Schleifen usw.) "zugewiesen" bzw. auf diese "gemappt".

 

Bei Programmanweisungen, für die es keine entsprechenden Sequenzdiagrammelemente gibt, wie z.B. "i = i+1" werden in UModel "Code- Anmerkungen" verwendet, um Code zu Diagrammen hinzuzufügen. Diese Anweisungen müssen anschließend mit der Lebenslinie verknüpft werden.

 

Beachten Sie, dass UModel diese Codefragmente nicht überprüft oder parst. Sie müssen vorher sicherstellen, dass die Codefragmente korrekt und kompilierbar sind.

So fügen Sie Code zu einem Sequenzdiagramm hinzu:

1.Klicken Sie auf die Schaltfläche "Anmerkung" ic-note und klicken Sie anschließend auf das Modellelement, an dem diese eingefügt werden soll, z.B. CombinedFragment.
2Geben Sie das Codefragment ein, z.B. return.
3.Klicken Sie auf den Ziehpunkt der eingefügten Anmerkung und ziehen Sie den Cursor auf die Lebenslinie.
4.Aktivieren Sie auf dem Register "Eigenschaften" das Kontrollkästchen "Ist Code", damit dieses Codefragment bei der Codegenerierung  inkludiert wird.

 

sd-codeNote2

 

 

Wenn Sie eine Anmerkung in einem Sequenzdiagramm auswählen, die zur Codegenerierung verwendet werden kann, so steht die Eigenschaft "Ist Code" im Fenster "Eigenschaften" zur Verfügung. Durch Aktivieren/Deaktivieren des Kontrollkästchens können Sie zwischen "normalen" Anmerkungen und Codegenerierungsanmerkungen wechseln.

 

Normale Anmerkungen:

sd-codeNoteNorm

 

Codegenerierungsanmerkungen

sd-codeNoteCode - werden mit einem schattierten Eck angezeigt

 

Wenn das Kontrollkästchen "Für das Forward Engineering verwenden" aktiviert ist, wird der Code automatisch bei jedem Forward Engineering aktualisiert. Wenn Änderungen am Sequenzdiagramm vorgenommen wurden, wird der Code der Operation immer überschrieben.

 

Das unten gezeigte Sequenzdiagramm wurde durch Rechtsklick auf die OnCommand-Operation und Auswahl des Befehls "Sequenzdiagramm von Code generieren" generiert. Der C# Code dieses Beispiels steht im OrdnerC:\Benutzer\<benutzer>\Dokumente\Altova\UModel2025\UModelExamples\IDEPlugIn\Styles\ zur Verfügung. Über die Option "Projekt | Quellprojekt importieren können Sie das Projekt importieren.

 

sd-codeNote

 

Anhand dieses Sequenzdiagramms wird der unten gezeigte Code generiert.

 

Public void OnCommand(int nID, object pUModel)
{
  //Generated by UModel. This code will be overwritten when you re-run code generation.
 
  if (!m_bPlugINVersionOK)
  {
  return;
  }
 
  if (nID == 3 || nID == 6)
  {
  OnSetStyles((IApplication)pUModel, "red");
  }
 
  if (nID == 4 || nID == 7)
  {
  OnSetStyles((IApplication)pUModel, "green");
  }
  GC.Collect();
 
}

© 2018-2024 Altova GmbH