uml генерация кода c
Генерация UML из кода C++? [закрытый]
есть ли инструмент, который может анализировать файлы C++ в рамках проекта и генерировать UML из него?
10 ответов:
Если его просто диаграммы, которые вы хотите,doxygen делает довольно хорошую работу.
Я разработал инструмент под названием Doxygraph который может анализировать XML, созданный Doxygen и превратить его в интерактивную диаграмму классов UML, которую вы можете просматривать в веб-браузере или импортировать в любое программное обеспечение, которое может читать файлы Graphviz «dot».
Я считаю, что Википедия может быть отличным источником информации о таких инструментах, особенно на сравнительных таблиц. Там есть страница на UML tools. См., в частности реверс-инжинирингом языков
UML Studio делает это довольно хорошо в моем опыте, и будет работать в «бесплатном режиме» для небольших проектов.
кажется Umbrello производит лучший UML из кода C++ (предложите использовать последнюю версию >= 2.22) по сравнению с командной строкой autodia на Dia и другие инструменты.
StarUML не произвели хорошие диаграммы для меня: странный импорт, не используется, не работает для многих людей:https://github.com/staruml/Cpp/issues
StarUML делает именно это, и это бесплатно. К сожалению, он не был обновлен в некоторое время. Было несколько проектов ответвления (поскольку администраторы проекта не позволили бы ему быть захваченным), но они тоже умерли смертью.
Создание UML из кода C++? [закрытый]
есть ли инструмент, который может анализировать файлы C++ в проекте и генерировать UML из него?
10 ответов
вот несколько вариантов:
Если его просто диаграммы, которые вы хотите,помощи Doxygen делает довольно хорошую работу.
Я считаю Enterprise Architect можете это сделать.
Я разработал инструмент под названием Doxygraph который может анализировать XML, созданный Doxygen и превратить его в интерактивную диаграмму классов UML, которую вы можете просматривать в веб-браузере или импортировать в любое программное обеспечение, которое может читать файлы Graphviz «dot».
Я считаю, что Википедия может быть отличным источником информации о таких инструментах, особенно на сравнительных таблиц. Есть страница, на UML tools. См., в частности реверс-инжинирингом языков
UML Studio делает это довольно хорошо в моем опыте и будет работать в «бесплатном режиме» для небольших проектов.
кто хочет UML заслуживает Рациональная Роза 🙂
кажется Umbrello производит лучший UML из кода C++ (предложите использовать последнюю версию >= 2.22) по сравнению с командной строкой autodia на Dia и другие инструменты.
StarUML не произвели хорошие диаграммы для меня: странный импорт, не используется, не работает для многих людей:https://github.com/staruml/Cpp/issues
StarUML делает именно это, и это бесплатно. К сожалению, он не обновлялся некоторое время. Было несколько ответвлений проектов (поскольку администраторы проекта не позволили бы его взять на себя), но они тоже умерли смертью.
Кодогенерация на основе UML-модели
Как нам уже известно, Visual Studio 2010 Ultimate предоставляет достаточно удобные возможности для реверс-инжиниринга. С помощью средств Visual Studio мы можем на основе существующего кода построить UML-модель и понять как у нас, собственно, все работает, но при этом не прилагать гигантские усилия по созданию диаграмм вручную и поддержанию их в актуальном состоянии.
Все бы хорошо, но у данного инструмента напрочь отсутствует возможность синхронизации модель с кодом. Т.е., после изменения модели, нам приходится вручную изменять классы. В случае большого количества мелких изменений, получается довольно неудобно, и по этой причине от полноценного моделирования частенько отказываются.
Недавно Microsoft выпустила дополнение под названием Microsoft Visual Studio 2010 Feature Pack 2. Данный инструмент дает нам прекрасную возможность синхронизировать изменения модели в код. Вкратце расскажу, как это можно использовать.
Для примера допустим, что у нас есть примитивный блог. Предметная область представлена двумя классами: Author и Article. Добавляем в солюшн новый Modeling Project. В нем создаем UML Class Diagram.
Воспользуемся возможностями Reverse Engineering. Перетаскиваем классы из Architecture Explorer-а на диаграмму. При этом на диаграмме сущность появляются вместе с атрибутами. Периодически между сущностями образуются связи, которые должны быть (и даже периодически правильно показывается тип связи), но в каких случаях – определить пока не получилось.
Заметьте, данный класс еще не присутствует в сборке Domain. Для того чтобы прописать его туда, а заодно применить все наши изменения, нужно сделать следующее.
В Model Explorer выбираем сборку Domain, идем в Properties и в пункте Text Template Binding тыкаем кнопочку «…». Добавляем новый элемент, в поле Project Path указываем имя проекта, в который будет генерироваться код, в поле Target Directory указываем папочку относительно проекта (мы генерим в корень) и указываем адрес шаблона. По умолчанию они находятся в папке «C:\Program Files (x86)\Microsoft Visual Studio 10.0\Common7\IDE\Extensions\Microsoft\Visualization and Modeling Feature Pack\2.0\Templates\Text». Можно задать несколько шаблонов на все случаи жизни. В нашем случае, выбираем ClassTemplate.t4.
После этого, нажимаем правой кнопочкой мыши в свободное место диаграммы и выбираем пункт Generate Code.
И – вуаля! Новый класс добавлен в сборку, все изменения применены в соответствии с моделью.
Кстати говоря, с помощью стереотипов имеется возможность указывать практически все: видимость членов, атрибуты, подключаемые при генерации пространства имен и пр.
Итак, M$ предлагает нам прекрасный инструмент, серьезно облегчающий жизнь архитекторам и разработчикам. К сожалению, этот очень необходимый пакет доступен только подписчикам MSDN, и компания почему-то не позволяет использовать его всем желающим легальным пользователям. И это при стоимости VS Ultimate порядка 300 тыс. рублей. Будем надеяться, что в ближайшем будущем такое положение вещей изменится.
Generating UML from C++ code? [closed]
Want to improve this question? Update the question so it’s on-topic for Stack Overflow.
Is there a tool that can parse C++ files within a project and generate UML from it?
10 Answers 10
Here are a few options:
If its just diagrams that you want, doxygen does a pretty good job.
I’ve developed a tool called Doxygraph which can parse the XML generated by Doxygen and turn it into an interactive UML class diagram which you can view in a web browser or import into any software that can read Graphviz «dot» files.
I believe Enterprise Architect can do that.
I find that Wikipedia can be a great source of information about such tools, especially for comparison tables. There’s a page on UML tools. See in particular the reverse engineered languages column.
UML Studio does this quite well in my experience, and will run in «freeware mode» for small projects.
Seems Umbrello produces best UML from C++ code (suggest to use latest version >= 2.22) comparing to command-line autodia for Dia and other tools.
StarUML have not produced good diagrams for me: strange import, not usable, does not work for many people: https://github.com/staruml/Cpp/issues
Whoever wants UML deserves Rational Rose 🙂
Генерация UML из кода C++?
Есть ли инструмент, который может анализировать файлы C++ внутри проекта и генерировать из них UML?
10 ответов
Есть ли какой-нибудь плагин eclipse, который может генерировать диаграмму UML / Class из исходного кода C++?
В настоящее время я читаю код игры cryengine. Он огромен и не очень хорошо документирован. Было бы очень хорошо, если бы я мог создать диаграмму UML из файла проекта. Я уже нашел некоторые инструменты для создания диаграммы UML из кода c++, проблема в том, что проект cryengine действительно.
Вот несколько вариантов:
Если вам нужны только диаграммы, doxygen делает довольно хорошую работу.
Я верю, что Enterprise Architect может это сделать.
UML Studio делает это довольно хорошо, по моему опыту, и будет работать в «freeware mode» для небольших проектов.
Кажется, что Umbrello производит лучший UML из кода C++ (предлагаю использовать последнюю версию >= 2.22) по сравнению с autodia командной строки для Dia и других инструментов.
StarUML не произвели для меня хороших диаграмм: странный импорт, не пригодный для использования, не работает для многих людей: https://github.com/staruml/Cpp/issues
Тот, кто хочет UML, заслуживает Рациональной Розы 🙂
В настоящее время я работаю с сервером приложений на основе Smalltalk, используя Visual Works. Я ищу способ сгенерировать диаграмму классов UML из кода. Я искал много инструментов, но, похоже, ничего не работает и не полезно.
Как правильно сгенерировать SQL из модели данных UML? Попытка с ArgoUML Я пробовал использовать «ArgoUML»; и пользовательскую версию ArgoUML под названием «DB_UML». DB_UML генерирует SQL файла с этим содержимым, например; из: Books.xmi : Генерация сбоя источника. Фабричный.
StarUML делает именно это, и это бесплатно. К сожалению, он уже некоторое время не обновлялся. Было несколько ответвленных проектов (поскольку администраторы проекта не позволили бы ему быть захваченным), но они тоже умерли смертью.
Похожие вопросы:
Я знаю, что такие функции, как генерация кода и поддержка doxygen, обычно считаются коммерческими, но мне было интересно, есть ли какие-либо бесплатные инструменты UML, поддерживающие генерацию кода.
Пожалуйста, предложите мне любой инструмент с открытым исходным кодом для генерации кода C# из конструктора UML или любой плагин для генерации кода из visualstudio. Мое требование состоит в том.
Есть ли какой-нибудь плагин eclipse, который может генерировать диаграмму UML / Class из исходного кода C++?
В настоящее время я читаю код игры cryengine. Он огромен и не очень хорошо документирован. Было бы очень хорошо, если бы я мог создать диаграмму UML из файла проекта. Я уже нашел некоторые.
В настоящее время я работаю с сервером приложений на основе Smalltalk, используя Visual Works. Я ищу способ сгенерировать диаграмму классов UML из кода. Я искал много инструментов, но, похоже.
Как правильно сгенерировать SQL из модели данных UML? Попытка с ArgoUML Я пробовал использовать «ArgoUML»; и пользовательскую версию ArgoUML под названием «DB_UML». DB_UML.
У меня есть следующая проблема. У меня есть несколько классов C#, и для этого мне нужна диаграмма классов UML в качестве документации. Поскольку я хочу сэкономить время и нервы, было бы здорово.
Windows 10 64-бит Microsoft Visual Studio Enterprise 2015 Версия:14.0.25431.01 Обновление 3 У меня есть почти готовый проект, и теперь мне нужно написать документацию. Я нашел некоторую информацию в.
Есть ли инструмент или что-то, что генерирует диаграммы UML из кода C#? Я использую Visual Studio 2015 (сообщество) и знаю, что есть опция просмотр диаграммы классов, но она не показывает отношения.