方法中的内聚性——计算和辅助函数呢



内聚度量背后的假设是,方法是相关的如果它们处理相同的类级变量。方法不相关如果它们一起处理不同的变量。在内聚类中,方法使用同一组变量。在非内聚类中,有一些方法适用于不同的数据。

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

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

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

您所指的这类方法被称为实用程序(又称助手)方法,从OO设计的角度来看,通常被认为是代码气味。下面的文章详细阐述了实用方法的主题,并提供了一个具有重构替代方案的示例:http://www.yegor256.com/2014/05/05/oop-alternative-to-utility-classes.html

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

我给你的建议是重新审视你的设计,尽量避免使用实用方法。如果由于某种原因,这是不可行的,那么保留您原来的实用程序方法分组。

最新更新