Подтвердить что ты не робот

UML для Ruby

Может ли кто-нибудь рекомендовать некоторые хорошие инструменты UML/моделирования для Ruby и Ruby on Rails? Edit: было бы неплохо сгенерировать код из диаграмм UML, а также генерировать диаграммы из существующего кода.

4b9b3361

Ответ 1

Отметьте инструменты UML для Ruby" (т.е. инструменты, которые генерируют некоторый код Ruby из диаграмм UML или, наоборот, генерируют некоторые UML-диаграммы из кода Ruby.)

Ответ 2

Что вы подразумеваете под "для Ruby"? UML является языковым агностиком.

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

Я рекомендую StarUML для всех потребностей UML.

Ответ 3

Вы хотели попросить инструмент, который преобразует UML в код ruby?

Я не думаю, что в данный момент есть. Но это очень хорошая идея приложения.

Я нашел ruby-uml

Генерирует диаграммы uml, отслеживая запуск приложения для анализа существующего приложения и обеспечивают поддержку рефакторизации.

Ответ 4

Visual Paradigm - это приложение для Mac и сделает это за вас.

Немного OT, но лучший инструмент UML, который я нашел, называется Enterprise Architect - это приложение Windows, и оно стоит вокруг $130 за базовую лицензию. Он не использует Ruby, но он использует Java, С++ и множество других языков, включая полную базу данных для SQL, как генерацию, так и обратную инженерию. Это стоит посмотреть.

Ответ 6

Railroad создает диаграммы классов UML для приложений Rails, включая модели и контроллеры, вы можете взглянуть на http://railroad.rubyforge.org/ p >

Ответ 7

Я знаю, что немного задержался на этом сообщении, но думаю, что у меня есть несколько вещей, которые можно добавить здесь.

Uml (диаграммы классов) не работает с динамически типизированными языками. Я не говорю о конкретных случаях, таких как языковые конструкции, но о чем-то более фундаментальном.

В рубине переменные не имеют никакого типа. В UML мы создаем ассоциации между типами.

Ruby использует утиную печать. Утиная печать может быть легко сопоставлена ​​с классами, реализующими определенный интерфейс. Однако, поскольку все классы автономны и полностью отделены друг от друга, мне нравится видеть каждый класс ruby ​​как компонент.

Я создал инструмент rubygem, который вы можете проверить. Это было немного сложно сделать, но пока это не очень хорошо работает, однако оно позволяет извлекать код Ruby (не Rails, Rails, ), поскольку они сопоставляются с базами данных. имеют мощности для ассоциаций) и генерировать из него диаграммы uml. https://github.com/mikaa123/umlify

Ответ 8

Я думаю, вы можете получить некоторый пробег от http://yuml.me все, что вам нужно сделать, это вывести какой-то текст.

Ответ 9

Если вы используете Linux, вам наверняка понравится Umbrello, UML-модератор, который генерирует код на многих языках, включая Ruby.

https://umbrello.kde.org/