;
-- Extract Method(提炼函数) : 将重复的代码放到一个函数中, 并让函数名称清晰的解释函数的用途;
-- Pull Up Method(函数上移) : 将函数从子类移动到父类中;..., 代替使用相同的表达式;
兄弟子类重复代码 : 一个父类有两个子类, 这两个子类中存在相同的表达式;
-- 代码相同解决方案 : 对两个子类 使用 Extract Method(提炼函数)方法, 然后将提炼出来的代码...: 使用Extract Class(提炼类) 方法, 将重复的代码提炼到一个重复类中去, 然后在两个类中 使用这个提炼后的新类;
-- 提炼类存在方式 : 将提炼后的代码放到两个类中的一个, 另一个调用这个类...由传递多个参数改为传递封装好的对象;
-- Introduce Parameter Object(引入参数对象) : 将函数参数封装在一个对象中;
参数列过长 :
-- 函数数据来源 : ① 参数,...: 函数参数传递对象, 那个函数所在的对象 与 这个参数对象依赖关系很紧密, 耦合性很高, 这时候就要避免依赖关系, 将数据从对象中拆出来作为参数;
-- 参数太长 : 如果参数太长, 或者变化太频繁