代码坏味道(二)

1、可变数据

  数据更新导致,而另外一处期待不同的值

  对应的重构手法:封装变量、拆分变量、移动语句、提炼函数、将查询函数和修改函数分离、移除设值函数、查询取代派生变量、函数组合成类、函数组合成变换、引用对象改为值对象

  欠理解

2、发散式变化

   每次只关心一个上下文(一旦产生修改,跳到系统某个点,只在该处做修改 )

  对应的重构手法:拆分阶段、搬移函数、提炼函数、提炼类

3、弹式修改

  类似于发散式变化,但是又恰恰相反(没明白书里这话是什么意思)

  对应重构手法:搬移函数、搬移字段、函数组合成类、函数组合成变换、拆分阶段、内联函数、内联类

4、依恋情结

  最大化区域内部交互、最小化跨区域交互,也可以理解为跨模块交互

  对应重构手法:搬移函数、提炼函数

5、数据泥团

  很多地方看到相同的三四项数据:两个类中相同的字段、许多函数签名中相同的参数,这些总是绑定在一起出现的数据应该拥有属于他们自己的对象

  对应重构手法:提炼类·、引入参数对象、保持对象完整

 

热门相关:无量真仙   刺客之王   刺客之王   明月照大江   刺客之王