我想制作一个UML图并显示三个类之间的依赖关系:TransparentOverlayCamera
,ViewCameraView
和SubpartCameraPreview
。
TransparentOverlayCamera
可以访问ViewCameraView
,反之亦然。所以我使用了双向关联。
ViewCameraView
可以访问SubpartCameraPreview
,但不能相反。所以我使用了单向关联。
但ViewCameraView
也会将TransparentOverlayCamera
的实例传递给SubpartCameraView
,以便它可以访问TransparentOverlayCamera
。
如何正确建模UML
中的最后一个关联?
答案 0 :(得分:1)
您可以从SubpartCameraView
到TransparentOverlayCamera
如果您想避开圈子并保持架构分层,那么跨层依赖关系通常会通过<<interface>>
建模,如下例所示:http://www.uml-diagrams.org/design-pattern-abstract-factory-uml-class-diagram-example.html
另请参阅:http://www.uml-diagrams.org/component-diagrams.html#provided-interface
答案 1 :(得分:0)
您的模型中没有必要使用依赖关系。 如果需要定义类之间的结构关系,那么关联就足够了。
小心,协会没有方向。关联端的箭头表示可导航性。 Navigability定义了,关联端的实例是明确可识别的。协会也没有定义沟通。
如果将某些内容传递给实例,则它不是结构模型,而是行为模型。你可能意味着将参数传递给操作。您需要使用特定类型的参数定义操作。
从您的示例中:TransparentOverlayCamera将被设置为SubpartCameraView类上定义的参数操作类型。