UML-Klassendiagramm

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
Antworten
Steffo
User
Beiträge: 45
Registriert: Sonntag 24. Mai 2009, 19:38

Hallo,
ich würde gerne mein Code durch einen UML-Tool durchjagen lassen, damit er mir die Beziehungen untereinander anzeigt. Nun habe ich epydoc benutzt, welcher dummerweise nur die Klassen für sich mit ihren Vererbungen betrachtet, aber ich sehe keine allgemeine UML-Übersicht mit Assoziationen etc.
Kennt da jemand ein gutes Tool? Ich habe mir pyUML als Standalone runtergeladen, aber ich bekomme eine Exception nach der anderen um die Ohren geknallt. :(

Danke im Voraus!

L. G.
Steffo
Zuletzt geändert von Steffo am Dienstag 13. November 2012, 16:06, insgesamt 1-mal geändert.
lunar

@Steffo Ich glaube, bei Pylint ist ein Tool dabei, dass aus Python-Code UML-Diagramme erstellen kann. Beachte aber, dass diese Diagramme die Ausdrucksstärke von Python nur eingeschränkt wiedergeben können.
Steffo
User
Beiträge: 45
Registriert: Sonntag 24. Mai 2009, 19:38

OK, danke, werde ich mal ausprobieren! :-)
Steffo
User
Beiträge: 45
Registriert: Sonntag 24. Mai 2009, 19:38

lunar hat geschrieben:@Steffo Ich glaube, bei Pylint ist ein Tool dabei, dass aus Python-Code UML-Diagramme erstellen kann. Beachte aber, dass diese Diagramme die Ausdrucksstärke von Python nur eingeschränkt wiedergeben können.
Das ist qualitätsmäßig leider nicht gut, da es viele Beziehungen nicht erkennt und viele sogar falsch sind. Wie es aussieht, muss ich das händisch machen...

L. G.
Steffo
lunar

@Steffo Davor habe ich Dich ja gewarnt. UML-Klassendiagramme können Python selbst nur unzureichend wiedergeben, da Python ausdrucksstärker ist und komplexere Beziehungen modellieren kann als UML.

Du kannst in einem UML-Klassendiagramm allenfalls eine abstrakte Ansicht der konkreten Klassenbeziehungen im Python-Quelltext wiedergeben, doch diese Abstraktion kann kein Werkzeug für die leisten… ebenso wie umgekehrt kein Werkzeug ein solches abstraktes Klassendiagramm in idiomatischem Python konkretisieren kann.
Antworten