Инструменты для генерации диаграмм UML для извлечения классов в javascript

Проект растет, и возникает необходимость визуализировать отношения между классами, присутствующими в проекте. Некоторые из них независимы, некоторые из них унаследованы от других.

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

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

  • автономный инструмент
  • который генерирует диаграммы UML из кода javascript моих определений классов

В Ruby этот инструмент называется RailRoady. Если такой инструмент выйдет и на JavaScript, это будет значительной помощью.

Ответы

Ответ 1

Очень маловероятно, что такой инструмент обратного проектирования существует, просто потому, что в JavaScript нет четко определенной концепции класса. Различные структуры и разные люди используют разные шаблоны кода для реализации объектов JavaScript, которые выступают в качестве классов для создания экземпляров.

Ответ 3

Некоторые инструменты статического анализа могут помочь в том, чего вы пытаетесь достичь. Я использую в основном проект jscomplexity (jscomplexity.org) для контроля качества, но я помню проект TAJS, который является более продвинутым, и я просто посмотрел презентацию PDF на http://cs.au.dk/~amoeller/talks/TAJS2.pdf, и если вы посмотрите на слайд 9, результат вывода абстрактного состояния JavaScript, возможно, более подходит для ваших требований.

TAJS имеет свой исходный код на github (https://github.com/cs-au-dk/TAJS), поэтому, если вы заинтересованы в использовании некоторых его частей, которые должны быть доступны (если разрешена лицензия).

Авторы также выпустили плагин для Eclipse, который отображает график вызовов или иерархию кода.

Надеюсь, это немного поможет.