所需的接口与接口实现vs&lt; <use>&gt;依赖</使用>

时间:2015-02-24 00:25:17

标签: interface uml

正如标题所暗示的那样,三者之间的区别是何时应该使用三者中的一部而不是另外两部中的一部分? 互联网充满了他们的定义,但我无法找到关于何时何地使用所需接口或<<use>>依赖关系的任何文本或解释。

2 个答案:

答案 0 :(得分:4)

实际上只有两种情况:一方面实现/使用,另一方面提供/需要。他们基本上描述了同样的事情,但重点不同。

通过实现/使用,您可以从类(或组件,如下面的示例中)到界面绘制可见关系,从而在图中显示界面及其操作。

realize/use

当然,你可以把它分成两个不同的图表。

另一方面,使用提供/必需,界面仅显示为棒棒糖,因此您无法看到操作。但是你可以在棒棒糖之间绘制可见的关系(通常是“汇编”)。

provided/required

如果你想表明谁实现了什么,我会说实现/使用更合适。如果您希望更多地关注部件之间的交互,则提供/要求更合适。

答案 1 :(得分:2)

必需的接口通常显示为套接字。这意味着为了使类工作,它在运行时需要与棒棒糖相对应。这个对应物又通过棒棒糖提供界面。要将类和接口定义分离,可以将接口放在一个构造类中,并从提供类到接口绘制一个实现。反之亦然,您从需求类到接口绘制依赖关系。是否用<<use>>刻板印象依赖性更多的是品味。

enter image description here

如上所述和替代表示: enter image description here