Создание UML из кода C++?

Есть ли инструмент, который может анализировать файлы C++ в проекте и генерировать из него UML?

Стоит ли изучать PHP в 2026-2027 годах?
Стоит ли изучать PHP в 2026-2027 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Приемы CSS-макетирования - floats и Flexbox
Приемы CSS-макетирования - floats и Flexbox
Здравствуйте, друзья-студенты! Готовы совершенствовать свои навыки веб-дизайна? Сегодня в нашем путешествии мы рассмотрим приемы CSS-верстки - в...
Тестирование функциональных ngrx-эффектов в Angular 16 с помощью Jest
В системе управления состояниями ngrx, совместимой с Angular 16, появились функциональные эффекты. Это здорово и делает код определенно легче для...
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
117
0
225 877
10
Перейти к ответу Данный вопрос помечен как решенный

Ответы 10

Кто хочет UML, заслуживает Рациональная роза :)

хорошая программа но очень дорогая!

ak3nat0n 03.04.2009 02:09

Ссылка в этом ответе устарела. Текущая ссылка: www-01.ibm.com/software/rational/products/swarchitect/cpp

Dan Nissenbaum 14.09.2012 17:13

И исходная ссылка, и ссылка в комментариях устарели. Не знаю, где найти текущую версию.

Bruno Alexandre Rosa 13.02.2019 16:05

невозможно найти страницу товара.

nurp 30.09.2019 10:33

Я считаю, что Архитектор предприятия может это сделать.

В самом деле, это действительно так и хорошо. Я использую его в течение многих лет, и для меня это, безусловно, лучший инструмент по соотношению цена / производительность (среди тех, что я использовал). Я также пробовал StarUML и Together - у первого есть потенциал, но он все еще не завершен. Второй - мучительно медленный.

Fabio Ceconello 06.01.2009 01:45

Однако я не пробовал Rational Rose, так как он намного выше моего приемлемого ценового диапазона.

Fabio Ceconello 06.01.2009 01:46
Ответ принят как подходящий

Вот несколько вариантов:

Пошаговое руководство по обратному проектированию кода в диаграммы UML с помощью 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/

Обратный инжиниринг диаграммы классов UML из кода C++ при наличии слабо типизированных контейнеров (2001) - http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.27.9064

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

Список других инструментов, на которые стоит обратить внимание - http://plg.uwaterloo.ca/~migod/uml.html

Принялся к более обстоятельному ответу.

gak 02.05.2012 02:59

BoUML (bouml.fr) доступен для Linux, Windows и Mac.

Rhubbarb 18.07.2012 16:04

Umbrello, похоже, только для Linux / KDE.

Rhubbarb 18.07.2012 16:06

См. Аналогичные вопросы здесь и здесь и здесь.

Keshava GN 30.05.2013 14:04

BoUML не бесплатен!

deepdive 21.01.2014 12:17

StarUML делает свою работу

dannymo 25.05.2016 21:43

StarUML не сумел создать что-либо полезное.

bitmask 06.07.2017 12:02

BoUML снова бесплатен!

CodingFeles 28.07.2017 10:27

BoUML - не лучший инструмент. Очень от UI и борется трудно с новым синтаксисом или зависимостей она не знает C++.

user643011 14.10.2017 02:16

BoUML снова бесплатен !!!

Tedi 28.01.2018 12:04

Modelio делает свою работу

King's jester 05.02.2018 13:17

umbrello не создавал и выдавал ошибку при открытии файла, как если бы у него не было разрешений, в то время как файл имел глобальные разрешения.

nurp 30.09.2019 10:30

Насколько я могу судить, umbrello не создает диаграммы UML.

DanielLC 14.02.2020 07:21

StarUML делает именно это, и это бесплатно. К сожалению, он давно не обновлялся. Было несколько ответвленных проектов (поскольку администраторы проекта не позволили перенять его), но они тоже умерли смертью.

StarUML не дал хороших диаграмм для меня странный импорт. @Rhubbarb, он также работает под Linux и Mac.

Aleksey Kontsevich 07.05.2017 16:39

Последний выпуск сейчас - август 2018 года, поэтому его снова подняли.

bart s 16.01.2019 15:16

По моему опыту, UML Studio справляется с этим достаточно хорошо и будет работать в «бесплатном режиме» для небольших проектов.

Вы можете запустить его в бесплатном (ограниченном) режиме под Wine.

SChepurin 02.09.2015 16:07

Если вам нужны только диаграммы, доксиген отлично справится.

Я только что получил полную иерархию классов в проекте + 300K LOC с Doxygen, он действительно неплохо справляется!

HFSDev 07.05.2013 18:32

Я считаю, что Википедия может быть отличным источником информации о таких инструментах, особенно для сравнительных таблиц. Есть страница на Инструменты UML. См., В частности, столбец реконструированные языки.

Я использовал Rational Rose и Rational Rhapsody для реверс-инжиниринга больших проектов. Я бы предпочел Rational Rhapsody для получения файлов классов UML для C++!

Я разработал инструмент под названием Доксиграф, который может анализировать XML, сгенерированный Doxygen, и превращать его в интерактивную диаграмму классов UML, которую вы можете просматривать в веб-браузере или импортировать в любое программное обеспечение, которое может читать "точечные" файлы Graphviz.

Очень красивое приложение! Помимо того, что это зависит от довольно большого количества библиотек, которых у меня не было (загруженных позже с cpan), все работает отлично. Спасибо!

Rubens 07.10.2013 15:43

Кажется, Umbrello создает лучший UML из кода C++ (рекомендуется использовать последнюю версию> = 2.22) по сравнению с автодия командной строки для Dia и других инструментов.

StarUML не дал мне хороших диаграмм: странный импорт, непригодный для использования, не работает для многих: https://github.com/staruml/Cpp/issues

Другие вопросы по теме