UML aus C ++ - Code generieren? [geschlossen]


113

Gibt es ein Tool, das C ++ - Dateien in einem Projekt analysieren und daraus UML generieren kann?

Antworten:


74

Hier sind einige Optionen:

Schritt-für-Schritt-Anleitung zum Umkehren von Engineering-Code in UML-Diagramme mit Microsoft Visio 2000 - http://msdn.microsoft.com/en-us/library/aa140255(office.10).aspx

BoUML - http://bouml.fr/features.html

StarUML - http://staruml.sourceforge.net/en/

Reverse Engineering des UML-Klassendiagramms aus C ++ - Code bei schwach typisierten Containern (2001) - http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.27.9064

Umbrello UML Modeller - http://uml.sourceforge.net/

Eine Liste anderer Tools zum Anschauen - http://plg.uwaterloo.ca/~migod/uml.html


Reagiert auf die gründlichere Antwort.
Gak

1
BoUML ( bouml.fr ) ist für Linux, Windows und Mac verfügbar.
Rhubbarb

2
Ähnliche Fragen finden Sie hier und hier und hier .
Keshava GN

8
BoUML ist nicht kostenlos!
Deepdive

2
StarUML hat es sehr schwer gemacht, irgendetwas Nützliches zu produzieren.
Bitmaske

53

Wenn es nur Diagramme sind, die Sie wollen, macht doxygen einen ziemlich guten Job.


2
Ich habe gerade eine vollständige Klassenhierarchie für ein + 300K LOC-Projekt mit Doxygen erhalten, es macht wirklich einen ziemlich guten Job!
HFSDev

15

Ich glaube, Enterprise Architect kann das.


2
In der Tat, und es tut gut. Ich benutze es seit Jahren und für mich ist es bei weitem das beste Preis- / Leistungs-Tool dafür (unter denen, die ich verwendet habe). Ich habe auch StarUML und Together ausprobiert - das erste hat Potenzial, ist aber immer noch unvollständig. Der zweite ist schmerzhaft langsam.
Fabio Ceconello

Ich habe Rational Rose jedoch nicht ausprobiert, da es weit über meiner akzeptablen Preisspanne liegt.
Fabio Ceconello

15

Ich habe ein Tool namens Doxygraph entwickelt , mit dem das von Doxygen generierte XML analysiert und in ein interaktives UML-Klassendiagramm umgewandelt werden kann, das Sie in einem Webbrowser anzeigen oder in eine Software importieren können, die Graphviz-Punktdateien lesen kann.


2
Sehr schöne Anwendung! Abgesehen von der Tatsache, dass es von ziemlich vielen Bibliotheken abhängt, die ich nicht hatte (später von cpan heruntergeladen), funktioniert das Ganze perfekt. Vielen Dank!
Rubens


5

UML Studio macht dies meiner Erfahrung nach recht gut und wird für kleine Projekte im "Freeware-Modus" ausgeführt.


Sie können es im kostenlosen (eingeschränkten) Modus unter Wine ausführen.
SChepurin

3

Scheint, als würde Umbrello die beste UML aus C ++ - Code (empfehlen Sie die Verwendung der neuesten Version> = 2.22) im Vergleich zu Befehlszeilen- Autodia für Dia und andere Tools erstellen .

StarUML hat für mich keine guten Diagramme erstellt: Seltsamer Import, nicht verwendbar, funktioniert bei vielen Menschen nicht: https://github.com/staruml/Cpp/issues



2

Ich habe Rational Rose und Rational Rhapsody für das Reverse Engineering großer Projekte verwendet. Ich würde Rational Rhapsody bevorzugen, um die UML-Klassendateien für C ++ zu erhalten!


1

StarUML macht genau das und es ist kostenlos. Leider wurde es eine Weile nicht aktualisiert. Es gab ein paar Ablegerprojekte (da die Projektadministratoren nicht zuließen, dass sie übernommen werden), aber auch sie sind eines Todes gestorben.


1
StarUML hat für mich keine guten Diagramme erstellt, seltsamer Import. @Rhubbarb, es funktioniert auch unter Linux und Mac.
Aleksey Kontsevich

Die neueste Veröffentlichung ist jetzt August 2018, also wurde sie wieder aufgenommen
Bart's
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.