组件提供的静态方法如何显示在 UML 组件图中?
How can a static method provided by a component be shown in an UML component diagam?
组件可以有一个提供的接口,可以用球形符号或实现对 <<interface>>
的依赖来显示。但是如果组件提供静态方法呢?
给定一个组件 MyComponent
通过 public 静态方法`操作提供其功能,以下是正确的 UML 表示吗?
+---------------------+ +---------------------------+
| <<component>> | <<realize>> | AClass |
| MyComponent |----------------->|---------------------------|
| | |+operation() <<static>> |
+---------------------+ +---------------------------+
或者 AClass
应该用 <<interface>>
刻板印象标记,即使它没有作为编程语言中的接口实现?毕竟有些语言没有接口结构。
并非每个构造都受 UML 中的规则约束。所以你有一定程度的自由。特别是在对静态编程语言建模时(就像您在具有大量 C 编程的嵌入式系统中一样),您需要设置自己的规则来表达事物。所以基本上你展示它的方式没有错。您应该在您打算使用此构造的域的建模规则中简单地描述此构造。可能我会将 AClass
刻板印象为 <<interface>>
,因为你有一些 public 方法公开的事实比它被实现为静态的事实更重要。
组件元素被定义为 UML 上层结构中的专用 class 元素。您可以将其用作标准 class 元素。您可以定义所有标准功能(操作、属性、接收)并连接关联。如果您使用的 uml 工具提供将组件显示为原型 class (<>),您将在那里看到所有已定义的功能。
组件可以有一个提供的接口,可以用球形符号或实现对 <<interface>>
的依赖来显示。但是如果组件提供静态方法呢?
给定一个组件 MyComponent
通过 public 静态方法`操作提供其功能,以下是正确的 UML 表示吗?
+---------------------+ +---------------------------+
| <<component>> | <<realize>> | AClass |
| MyComponent |----------------->|---------------------------|
| | |+operation() <<static>> |
+---------------------+ +---------------------------+
或者 AClass
应该用 <<interface>>
刻板印象标记,即使它没有作为编程语言中的接口实现?毕竟有些语言没有接口结构。
并非每个构造都受 UML 中的规则约束。所以你有一定程度的自由。特别是在对静态编程语言建模时(就像您在具有大量 C 编程的嵌入式系统中一样),您需要设置自己的规则来表达事物。所以基本上你展示它的方式没有错。您应该在您打算使用此构造的域的建模规则中简单地描述此构造。可能我会将 AClass
刻板印象为 <<interface>>
,因为你有一些 public 方法公开的事实比它被实现为静态的事实更重要。
组件元素被定义为 UML 上层结构中的专用 class 元素。您可以将其用作标准 class 元素。您可以定义所有标准功能(操作、属性、接收)并连接关联。如果您使用的 uml 工具提供将组件显示为原型 class (<>),您将在那里看到所有已定义的功能。