同时关联和依赖?
Association and Dependency at the same time?
我现在正在学习 UML 运行 进入以下问题。
public class Alpha{
Beta b;
void function(Beta c){
c.doSomething();
}
}
我不太确定应该使用哪个箭头。它有一个协会,因为 "Beta b"。但它也有一个依赖项,因为它在一个函数中使用了 Beta c。 Beta b 和 c 彼此完全独立。我可以同时使用两支箭还是其中一支比另一支强?
你说的是'arrows',但是联想并不总是有箭头的。在这个答案中,我将比较关联 A -> B 和依赖项 A -> B,两者都带有从 A 指向 B 的箭头。
我会说关联隐含着依赖关系,所以如果你画出关联关系,就可以省去依赖关系。原因是因为有关联,A依赖于B,因为没有B,A就不可能有B的关联。
但是,从UML 2.5.1 规范来看,这并不明显。规范不认为关联是一种特殊的依赖关系。
没有确定的答案。根据统一建模语言参考手册:
Note that association and generalization fit within the general definition of dependency, but they have their own model representation and notation and are not usually considered to be dependencies...
这意味着如果 Beta
到 c
的使用可以从被建模为依赖关系中获益,那么在一些更复杂的情况下(未说明),这样做可能是有意义的代码,是一个模型)。
另请参阅:
- Difference between association and dependency?
- Does an association imply a dependency in UML?
我现在正在学习 UML 运行 进入以下问题。
public class Alpha{
Beta b;
void function(Beta c){
c.doSomething();
}
}
我不太确定应该使用哪个箭头。它有一个协会,因为 "Beta b"。但它也有一个依赖项,因为它在一个函数中使用了 Beta c。 Beta b 和 c 彼此完全独立。我可以同时使用两支箭还是其中一支比另一支强?
你说的是'arrows',但是联想并不总是有箭头的。在这个答案中,我将比较关联 A -> B 和依赖项 A -> B,两者都带有从 A 指向 B 的箭头。
我会说关联隐含着依赖关系,所以如果你画出关联关系,就可以省去依赖关系。原因是因为有关联,A依赖于B,因为没有B,A就不可能有B的关联。
但是,从UML 2.5.1 规范来看,这并不明显。规范不认为关联是一种特殊的依赖关系。
没有确定的答案。根据统一建模语言参考手册:
Note that association and generalization fit within the general definition of dependency, but they have their own model representation and notation and are not usually considered to be dependencies...
这意味着如果 Beta
到 c
的使用可以从被建模为依赖关系中获益,那么在一些更复杂的情况下(未说明),这样做可能是有意义的代码,是一个模型)。
另请参阅:
- Difference between association and dependency?
- Does an association imply a dependency in UML?