Domain-Specific Modeling tool Domain-Specific Modeling top 2 logo Domain-Specific Modeling top3 image

 
English Francais Deutsch Japanese
 

Integration mit anderen Entwicklungsumgebungen

Mit der MetaEdit+-Programmierschnittstelle (API) lässt sich eine problemlose Integration von MetaEdit+ mit anderen Tools herstellen. Die API beinhaltet neben einer Schnittstelle zum Lesen, Erzeugen und Aktualisieren von Modellelementen auch Untersützung bei der Steuerung von MetaEdit+ für Skripting- und Simulationsaufgaben.

Die MetaEdit+ API eignet sich für eine ganze Reihe von Aufgaben:

Für die Anwendungsintegration benutzt die MetaEdit+-Programmierschnittstelle den breit unterstützten, offenen SOAP/Web Services/.NET-Standard, sodass auf die MetaEdit+-Funktionen von beinahe jeder Programmiersprache (Java, C, C++, C#, Visual Basic, Perl usw.) und Plattform (Windows 2000, XP; Linux, HP-UX, Solaris etc.) aus zugegriffen werden kann.

Ergänzend zum dynamischen Echtzeit-Link können Modelle auch im XML-Format im- und exportiert werden. Wegen der Möglichkeit von Kommandozeilen-Parametern für Datenbank-Login und -Erzeugung ist MetaEdit+ aktives Glied einer "Build Chain".

Modelle in MetaEdit+ animieren, während der Code läuft 

Ein Emulator oder eine Programmierumgebung kann die API verwenden, um ein Tracing durchzuführen oder die Modellausführung zu animieren. Bei der Codeausführung werden die korrespondierenden Modellelemente in MetaEdit+ durch eine rote Umrandung hervorgehoben.

Diff: Modelle vergleichen

Die MetaEdit+-Programmierschnittstelle generiert vollständige Informationen über die Modelle und die Daten, die sie in XML enthalten. Mit einem XML-Diff-Werkzeug können Modellversionen leicht miteinander verglichen werden. API-Kommandos können auch verwendet werden, um veränderte oder hinzugekommene Elemente hervorzuheben. 

In dem Beispiel oben lassen sich drei verschieden Änderungsarten ausmachen: Erstens wird eine Eigenschaft modifiziert, indem ihr Wert von "seconds" in "minutes" geändert wird. Zweitens wird ein neues Objekt "Start" mit Beziehungen hinzugefügt. Und drittens wird das alte Objekt "Start" mit seinen Beziehungen entfernt.