实现编程理论的六个原则⑥变动率

是什么

变动率体现了修改代码的时间点,变动率相同意味着代码在同一时间点被修改。

同时修改的元素要放在同一个地方,在不同时间点修改的元素要放在不同的地方

这可以说是对时间应用了对称性原则, 同样的东西要同等对待,这一点对修改代码的时间来说也一样,同一时间修改的东西要放在同一个地方。

为什么

在模块等按照某种单位分组的代码中,有多个修改理由的代码比较脆弱,因为一个模块中如果修改代码的时间不同步,那么修改带来的影响将会波及无关的部分。修改理由越多,修改的机会就越多。这种代码一般会承担多项职责,所以代码量较大。经过修改之后,代码量会进一步增加。久而久之,这类代码就会像建在沙地上的楼阁一般,摇摇欲坠。

相反,如果模块只存在一个修改理由,就代表该模块由关联性极强的人代码集合而成。这类模块满足高聚合性,非常牢固。因为修改范围较小,影响范围也小,所以模块修改起来比较轻松。

怎么做

修改时间相同的元素要放在一个地方,修改时间不同的元素要放在不同的地方。这对逻辑和数据来说都适用。

单一职责原则

“单一职责原则”规定一个模块只能有一个修改理由。

有多个修改理由就意味着模块承担了多项职责。我们不可以创建这样的模块。

之所以这么说,因为承担多项责任的模块十分脆弱,当一个模块承担了多项职责时,只要其中一项职责被修改,其他不相关的地方就会受到影响,模块很可能不经意间遭到破坏。

模块的某个部分有多个修改理由就证明该模块违反了单一职责原则。一个模块只承担一项职责,模块必须专注于某项职责。

 

扫描二维码关注公众号,回复: 12731828 查看本文章

猜你喜欢

转载自blog.csdn.net/u012069234/article/details/112846194