首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >OO设计质量度量

OO设计质量度量
EN

Stack Overflow用户
提问于 2014-02-28 11:01:52
回答 1查看 546关注 0票数 4

我正在阅读一个关于OO设计质量度量的科学,作者是Robert。

在他的论文中,他描述了“一组可以用来衡量面向对象设计的质量的度量标准,即该设计的子系统之间的相互依存性”。

他继续讨论如何在抽象和不稳定之间取得良好的平衡。以下是他所写的衡量标准及其计算方法:

Na:包中的具体类和抽象类(和接口)的数量表明包的可扩展性。

传入耦合器(Ca):包外依赖于包中类的类数。

传出耦合器(Ce):包中依赖于包外类的类数。

抽象性(A):分析包中抽象类(和接口)的数量与分析包中的类总数的比率。此度量的范围为0到1,其中A=0表示完全具体的包,A=1表示完全抽象的包。

不稳定性(I):传出耦合( Ce )与总耦合(Ce + Ca)之比,使I=Ce/ (Ce + Ca)。这个指标是衡量一揽子计划对变化的适应力的一个指标。此度量的范围为0到1,其中I=0表示完全稳定的包,I=1表示完全不稳定的包。

距离主序列(D):包与理想线A+I= 1的垂直距离。这个度量是包的抽象性和稳定性之间平衡的指标。主序列上的包在抽象性和稳定性方面是最优平衡的。理想包要么是完全抽象和稳定的(x=0,y=1),要么是完全具体和不稳定的(x=1,y=0)。此度量的范围为0到1,D=0表示与主序列一致的包,D=1表示尽可能远离主序列的包。

我做了以下简单的设计。

我对最后一个指标(D)感到困惑。如果我计算出图中的度量D(D‘),我得到一个负值-0.5。但是如果我读到描述的话,说明值应该介于0到1之间。维基百科还声明,对于度量接口,也被认为是抽象类。但我不能从报纸上编出来。这是真的吗?

我做错什么了吗?相信这个设计,虽然真的很小,但不是很糟糕吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-02-28 13:45:47

如果D是“距离”,那么应该考虑它的绝对值,本文中的公式也有一个绝对算子。我不知道你是怎么计算距离的,或者我误解了你。

关于抽象类和接口,我认为它们都是提供“接口框架”的机制,这意味着将依赖关系保持在接口级别,而不是具体的类.因此,我认为,尽管有一些不同之处,但还是可以把它们视为同样的事情。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/22093280

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档