LINUX.ORG.RU
ФорумTalks

Превратить C в UML

 ,


0

3

Существуют ли программы, способные превратить код на Си в блок-схему или диаграмму UML? Вообще, такое принципиально возможно?

Для определённости, код на Си без особых извращений. Например, такой: https://github.com/chocolate-doom/chocolate-doom

★★★

Ответ на: комментарий от MOPKOBKA

Sourcetrail

Закрытый авторами из-за проблемы, для решения которой он создавался? :)

olegd ★★★
() автор топика

IBM Rational Rose то что я знаю, хотя не разу не делал

TolkoSprosit
()
Последнее исправление: TolkoSprosit (всего исправлений: 2)
Ответ на: комментарий от Tanger

Неплохая попытка!

ИЧСХ, по твоему запросу только одни поиски решения, и ни одного решения

TolkoSprosit
()

Пожалуйста, посоветуйте бесплатный или недорогой современный аналог Rational Rose с интерфейсами для автоматизации и интеграции.

sanyo1234
()

а если серьёзно, такое принципиально возможно, но бессмысленно, т.к. вся суть UML и прочих диаграмм - продемонстрировать общую логику работы, на чуть более-менее реальном коде результирующая диаграмма получится слишком раздутой и малопонятной, если пихать в неё вообще всё

а если пихать не всё, то проще самому руками начертить

next_time ★★★★★
()
Ответ на: комментарий от Tanger

Так ты в ОП даже не описал что ты хочешь видеть на UML для C.

На слишком точное описание с большой вероятностью ответят «такого не и не будет» :)

Чем не устраивает «превратить код на Си в блок-схему или диаграмму UML»? Нужна визуальная схема, в общих чертах описывающая работу большой и сложной программы. Имеются только исходники без специальной разметки. Считаем, что никаких извращений препроцессор не делает. Или можно превращать в схему исходники, уже обработанные препроцессором.

olegd ★★★
() автор топика
Ответ на: комментарий от next_time

суть UML и прочих диаграмм - продемонстрировать общую логику работы,

диаграмма получится слишком раздутой и малопонятной, если пихать в неё вообще всё

Логично. Но можно кое-что скрыть. Добавить какие-то правила для скрытия. Например, обращения к стандартным библиотекам. Опять же, можно как-то группировать блоки, исходя из логики вызовов.

olegd ★★★
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.