直接类耦合度量是衡量一个类对系统中其他类的依赖性的度量。与其他类的依赖关系越多,重用该类或维护它就越困难。虽然我没有找到 Bansiya 和 Davis 在 2002 年定义它的原始文章,但我在其他学术论文以及 1997 年的 DDJ 文章中找到了它的描述,其中 Bansiya 和 Davis 描述了一种计算指标的工具自动从源代码:
与一个类直接相关的不同数量的类的计数,包括通过属性声明和方法中的消息传递(参数)相关的类。
此外,它与CBO(对象类之间的耦合)的相似性,特别是关于不计入耦合的继承,以及关于仅计一次的相同类之间的多个关系,导致以下分析:
EntryStation
仅具有主要类型的属性:无耦合User
:无耦合ATM
与 Consortium
(共享聚合)相关联,并具有 CashierStation
属性:与 2 个类耦合CashierStation
有一个 EntryStation
属性和 Branch
属性 ans 也与 Branch 相关联:与 2 个类耦合Consortium
与 ATM
相关联,并具有 Branch
、EntryStation
和 User
属性:与 4 个类耦合!Branch
关联并具有 CashierStation
属性。它具有 ATM
和 User
属性:与 3 个类耦合!所以从整体上看,最大耦合是 4,而不是 2。耦合总数为 11。每个类的平均值为 1.83(与 2 相差不远)。
不同的计算可能是什么?
总之,您确定这篇文章是正确的吗?或者文章是否只提到了一个特定类别的 DCC 值为 2?