分享 yUML 是个很赞的 UML 生成器

fredwu · 2013年03月21日 · 最后由 larryzhao 回复于 2013年03月26日 · 9345 次阅读

网址:http://yuml.me/

撰写 DSL ——

// lazy loading of attributes
[note: User.passport_number{bg:cornsilk}]-[Entity {bg:orange}]
[Entity ]->[Repository {bg:orange}]
[AttributeMapper ]-.->[Repository ]
[Repository ]->[DataProvider Dispatcher ]
[Criteria ]-.->[Repository ]
[DataProvider Dispatcher ]->[DataProvider ]
[<<DataProvider>> ]^-.-[Default DataProvider ]
[<<DataProvider>> ]^-.-[DataProvider ]
[DataProvider ]performs criteria-.->[DataRecordCache ]
[DataRecordCache ]-.->[DataRecord {bg:orange}]
[DataRecordCache ]-.->[ Entity{bg:orange}]
[DataRecord ]->[ Entity{bg:orange}]
// finder
[note: UserRepository.find(1){bg:cornsilk}]-[id 1]
[id 1]->[Repository]
[AttributeMapper]-.->[Repository{bg:orange}]
[Repository]->[DataProvider Dispatcher]
[Criteria]-.->[Repository]
[DataProvider Dispatcher]->[Default DataProvider]
[<<DataProvider>>]^-.-[Default DataProvider]
[<<DataProvider>>]^-.-[DataProvider]
[Default DataProvider]performs criteria-.->[DataRecordCache]
[DataRecordCache]-.->[DataRecord{bg:orange}]
[DataRecordCache]-.->[Entity{bg:orange}]
[DataRecord]->[Entity{bg:orange}]

然后生成——

非常不错。

Nice, thanks for sharing.

这种写的方式真不错

语法有点类似的一个 graphviz 的 ruby 版 dsl,效果不同,各有用处。

用过,简单的行,复杂的就不行。

生成出来了你也看不懂。需要调整一下又不行了

弄一个试试去。。。

对 UML 无感,不过楼主说的只是类图吧

#4 楼 @as181920 那个还是有点复杂

感觉 uml 用得很少,是这样么?

我觉得 UML 是学院派弄出来忽悠人的。没见过它发挥实际作用。画几张 UML 图去忽悠人很不错,反正大部分人都看不懂,他们只能自认学识浅薄。

#13 楼 @tylerlong 类图和用例还是很有用的,剩下的对于 rails 开发是过于麻烦了,但是如果真的一直用正向工程的应该还是有用的吧

#15 楼 @larryzhao UML 在 Java 如日中天的时候火过一阵子。软件开发在不断演变进步,最近很少听到有人提 UML 了。

#14 楼 @fredwu 这个 sequence diagram 赞啊

需要 登录 后方可回复, 如果你还没有账号请 注册新账号