Fulib - macht Java Code aus Klassendiagrammen (Albert Zündorf)

Java User Group Hessen (JUGH)
Java User Group Hessen (JUGH)
Public group

Online event

This event has passed

Details

Fulib ist eine neues leichtgewichtiges Tool zur Generierung von Java aus UML-Klassendiagrammen. Einst als Fujaba bzw. SDMLib an der Uni Kassel gestartet, wurde es inzwischen nochmal völlig neu gedacht und entsprechend weiterentwickelt.

Fulib hat keinen graphischen Editor, sondern nur eine einfache API: Man schreibt ein paar Java-Statements wie createClass("Product"), createAttribute(product, "price", DOUBLE) oder createAssociation(customer, product, "products", MANY, "customers“, MANY) und lässt dann Generator.generate(classModel) drüber laufen - fertig ist die Java-Implementierung.

Features & Vorteile von Fulib im Überblick:

• Fulib gibt es als Gradle Plugin.
• Der generierte Code braucht KEINE Run time Library.
• Das Ganze funktioniert iterativ und mit GIT.
• Der generierte Code kann mit manuellen Teilen gemischt werden.
• Refactorings wie z. B. die Umbenennung von Klassen und Attributen sind möglich.
• Es gibt auch eine OCL-ähnliche und eine cypher-ähnliche Query Language.
• Query Languages werden wiederum als Java API angeboten.
• Die API kann man aber auch selbst generieren, dann braucht man KEINE Run time Library
• Die Query Languages benutzen intern Reflection und brauchen nur normale Getter, d. h. das funktioniert auch auf manuell programimerten Modellen (und Modellteilen).
• Und weil die Queries letztlich wieder nur Java Code, sind kann man sie mit Git verwalten und iterativ arbeiten.

Zum Speaker:
Albert Zündorf ist Professor für Software Engineering an der Universität Kassel