Генерация Java-кода из модели диаграммы - PullRequest
1 голос
/ 17 февраля 2011

В моем приложении я моделирую диаграмму решений (узлы + соединения). У меня есть готовые классы моделей (два основных класса: Node и Connection + подклассы для особых случаев). Эта диаграмма становится очень большой, и отслеживать все соединения и узлы только с помощью кода нелегко (и учитывать будущее обслуживание). Мне было интересно, есть ли инструмент (плагин Eclipse или другой), который я мог бы использовать в своих модельных классах (например, типы узлов, типы соединений), использовать его, чтобы «нарисовать» диаграмму графически (создание узлов и соединений), а затем сгенерировать код диаграммы?

Классы моделей:
Node: содержит List<Connection> всех соединений с этого узла
Connection: Node from, Node to

EDIT: Я хочу сгенерировать метод, который инициализирует все необходимые узлы и соединения (объекты Node и Connection) и возвращает узел head / start. Эта структура в памяти затем обрабатывается приложением при принятии решения.

Ответы [ 4 ]

2 голосов
/ 17 февраля 2011

Звучит так, будто вы хотите что-то вроде jgraph?http://www.jgraph.com/jgraph.html

1 голос
/ 26 февраля 2011

Вы пробовали AndroMDA

AndroMDA (произносится как andromeda) - это структура генерации открытого исходного кода, которая следует парадигме MDA. Он берет модель (ы) из CASE-инструмента (ов) и генерирует полностью развертываемые приложения и другие компоненты.

Если вы можете создать свой график с помощью некоторых инструментов UML (не уверен, насколько это просто), AndroMDA может сгенерировать код Java для вас.

Он поддерживает множество инструментов UML , включая некоторые бесплатные инструменты.

0 голосов
/ 17 февраля 2011

Вам может понравиться graphviz . В этом приложении очень просто построить диаграмму направленного графа. Есть несколько библиотек-оболочек, которые помогут интегрировать его, если вы хотите это сделать. Или, если вы просто хотите скормить график и сгенерировать картинку, это очень просто. Посмотрите примеры здесь . FTW: Я широко использовал это для иерархии классов, описания потока взаимодействия, карт разума .. :)

0 голосов
/ 17 февраля 2011

Сказка на Скорость .Широко используется для генерации кода.

...