keboo hat geschrieben:Kann es sein, dass UML nur Sinn macht, wenn man OOP macht?
Noch schlimmer: UML ist im grossen und ganzen nur für statische Programmiersprachen wirklich zu gebrauchen. Teile von UML kannst Du natürlich auch für Python verwenden. In Python ist ja alles Objekt, Du benutzt also immer eine Art OOP, auch wenn Dir das nicht immer bewusst ist. Module kann man zum Beispiel als Singleton-Klassen modellieren mit den Funktionen als Methoden des Moduls. Zustands-, Aktivitäts- und Sequenzdiagramme kann man sogar für nicht-OOP Sprachen benutzen.
Mit
pyreverse kann man UML aus Python erzeugen, unter anderem für
ArgoUML
Wenn Du selbst etwas wie einen "grafischen Programmablauf" programmieren möchtest, dann schau Dir mal die Ausgabe von folgendem Befehl und
GraphViz an.
@jens: Traumziel ist eigentlich immer der "Round-Trip", also das man sowohl Quelltext aus UML und UML aus Quelltext erzeugen kann. Letzteres macht zum Beispiel Sinn, wenn man eine fertige Quelltextbasis besser verstehen möchte. Und wenn man dann im UML etwas zum Refaktorisieren findet, zum Beispiel eine Untermenge von Methoden die man in eine eigene Klasse herausziehen möchte, dann kann man das im Idialfall durch rumklicken im Diagramm machen und nicht im Quelltexteditor. Wie gesagt funktioniert das aber nur halbwegs Vernünftig in statischen Programmiersprachen.