Answers:
我认为您正在寻找的指标是LCOM4,尽管它更适用于类。
... metric:LCOM4(缺乏内聚方法),用于衡量内聚类的程度。解释该指标非常简单,因为值1表示一个类仅具有一个职责(良好),值X表示一个类可能具有X个职责(不良),应进行重构/拆分。
这里没有任何魔术,只有常识。让我们以Driver类为例。此类具有两个字段:Car和Brain,以及五个方法:drive(),goTo(),stop(),getAngry()和DrinkCoffee()。这是这些组件之间的依赖关系图。由于存在三个相关组件块,因此LCOM4 = 3,因此该类似乎具有三个不同的职责,并且违反了单一职责原则。
...
如果可以使用的话,这是一个很棒的工具。:)
brain.setAngry(driver)
?car.applyBreaks(driver)
?
各种代码度量工具均支持不稳定性。