我和其他几个开发人员目前正在清理我们的遗留代码库,主要是分离可视化和数据层。为了帮助没有参与此重构的开发人员理解模型,我想介绍一个(相当非正式的)类图,其中包含关于每个类的作用域和所需用法的注释。因为我很懒,所以我想用UMLGraph来解决这个问题。
然而,有一个小问题:我们有一个perl代码库,重构广泛地使用了Moose角色。现在,我对UML的了解还不够好,无法找到角色的适当缩写--我的第一个猜测是接口,但它们也包含实现;多重继承也不能完全解决这个问题。
我该如何(或者你该如何)在类图中正确地表示角色?
发布于 2010-04-22 20:48:56
我不是UML专家,但是在original paper中,特征是这样表示的
Traits Diagram http://img.skitch.com/20100422-8iey4atkkama53ni81c3pca562.jpg
发布于 2010-07-28 01:31:36
我会将一个角色表示为具有«role»构造型的UML类。然后,组成角色的类将与具有构造型«does»的角色相关联。
Simple Composition http://img820.imageshack.us/img820/5665/simplecomposition.png
如果我需要进一步调整角色,使用别名或排除,我会将其创建为一个带有适当注释的成员和«adaptation»构造型的关联类。关联类的名称并不重要,因为它在设计中不是一个真正的类型;所以我不给它命名。
Composition with Conflict Resolution http://img828.imageshack.us/img828/244/conflictcomposition.png
(请注意,我已经显示了与组合和它所适应的角色相连接的适应“类”。我真正想做的是将它与MyComposition和MyRole1之间的关联联系起来。只是我使用的工具不支持关联类)。
https://stackoverflow.com/questions/2690249
复制相似问题