方法中的凝聚力 - 计算和辅助函数怎么样?

时间:2016-05-15 07:43:38

标签: optimization metrics cohesion

  

凝聚力指标背后的假设是方法是相关的   如果他们在相同的类级变量上工作。方法无关   如果他们完全处理不同的变量。在一个有凝聚力的课堂上,   方法使用同一组变量。在一个没有凝聚力的课堂上,   有一些方法可以处理不同的数据。

在度量标准中,从不匹配的对中减去共享对实例变量,字段的访问权限的方法对的数量。

但是那些简单地执行计算并返回值的方法呢?我有很多它们,但因为它们不共享任何实例变量,所以建议将它们分开,这对我来说没有意义。

1 个答案:

答案 0 :(得分:0)

  

但是那些简单地执行计算并返回值的方法呢?

您所指的那些方法称为实用程序(又名辅助程序)方法,通常被认为是OO设计视角下的代码气味。以下文章详细阐述了实用方法的主题,并提供了一个带有重构替代方案的说明性示例:http://www.yegor256.com/2014/05/05/oop-alternative-to-utility-classes.html

可能您的静态代码分析工具无法识别实用程序类(仅包含实用程序方法的类),并为您提供了类中错误放置方法的相同提示。假设您已经根据某些标准对方法进行了分组,那么将实用程序类的每个方法移动到单独的类中都没有多大意义。

我对你的建议是重新审视你的设计并试图消除使用效用方法。 如果由于某种原因这是不可行的,那么保留原始的实用方法分组。