如何从现有的 Ruby 代码生成 UML 图?[关闭]
-
09-06-2019 - |
题
有人可以为 Ruby 和 Ruby on Rails 推荐一些好的 UML/建模工具吗?从 UML 图生成代码以及从现有代码生成图会很好。
解决方案
查看 ”用于 Ruby 的 UML 工具“ (IE。从 UML 图生成一些 Ruby 代码的工具,或者反过来,从 Ruby 代码生成一些 UML 图的工具。)
其他提示
“对于 Ruby”是什么意思?UML 与语言无关。
根据您的评论 - UML 是一个通用的、独立于语言的模型。它被设计为(根据我的理解)在选择实现语言之前使用,因此并非所有 UML 元素在所有语言中都有相应的元素(例如 - Ruby 中的接口)。然而,这并不意味着您不能创建 UML 模型并实现它们在 Ruby 中描述的系统。
我建议 星型UML 满足所有 UML 需求。
最初的 Railroad gem 仅适用于 Rails v2 及更早版本。如果您使用 Rails 3, 使用 RailRoady gem 反而。(另请参阅 github 上的自述文件。)
您是否想要一个将 UML 转换为 ruby 代码的工具?
我认为目前还没有。但这是一个非常好的应用想法:)
我已经找到了 ruby uml
通过追踪应用程序的运行以分析现有应用程序并为重构提供支持,从而生成UML图。
我知道我注意到这个消息有点晚了,但是我想我有一些东西要在这里补充。
Uml(类图)不适用于动态类型语言。我不是在谈论诸如特定于语言的构造之类的特定情况,而是在谈论更基本的东西。
在 ruby 中,变量没有任何类型。在 UML 中,我们创建关联 之间 类型。
Ruby 使用鸭子类型。鸭子类型可以很容易地映射到实现特定接口的类。然而,由于所有类都是自包含的并且彼此完全解耦,所以我喜欢将每个 ruby 类视为一个组件。
我创建了一个 rubygem 工具,您可以查看一下。做起来有点困难,而且还不能很好地工作,但是它允许提取 Ruby 代码(不是 Rails、Rails 模型) 是 键入,因为它们映射到数据库。他们甚至有关联基数)并从中生成 uml 图。 https://github.com/mikaa123/umlify
Railroad 为 Rails 应用程序生成 UML 类图,包括模型和控制器,您可能想看一下 http://railroad.rubyforge.org/
如果您使用 Linux,您肯定会喜欢 Umbrello,它是一个 UML 建模器,可以生成多种语言的代码,包括 Ruby。
我想你可能会得到一些里程 http://yuml.me 您需要做的就是输出一些文本。