1、可变数据
数据更新导致,而另外一处期待不同的值
对应的重构手法:封装变量、拆分变量、移动语句、提炼函数、将查询函数和修改函数分离、移除设值函数、查询取代派生变量、函数组合成类、函数组合成变换、引用对象改为值对象
欠理解
2、发散式变化
每次只关心一个上下文(一旦产生修改,跳到系统某个点,只在该处做修改 )
对应的重构手法:拆分阶段、搬移函数、提炼函数、提炼类
3、霰弹式修改
类似于发散式变化,但是又恰恰相反(没明白书里这话是什么意思)
对应重构手法:搬移函数、搬移字段、函数组合成类、函数组合成变换、拆分阶段、内联函数、内联类
4、依恋情结
最大化区域内部交互、最小化跨区域交互,也可以理解为跨模块交互
对应重构手法:搬移函数、提炼函数
5、数据泥团
很多地方看到相同的三四项数据:两个类中相同的字段、许多函数签名中相同的参数,这些总是绑定在一起出现的数据应该拥有属于他们自己的对象
对应重构手法:提炼类·、引入参数对象、保持对象完整
标签:重构,函数,味道,代码,提炼,手法,搬移,组合成 From: https://www.cnblogs.com/shixiaogu/p/17236381.html