【整理】【代码的坏味道】重复代码(Duplicated Code)

  1. 同一类中的不同函数具有相同表达式,直接采用Extract Method(提炼函数)提炼重复的代码。
  2. 两个互为兄弟的子类含有相同的表达式。
    • 首先采用Extract Method(提炼函数)提炼重复的代码。
    • 然后再对提炼的代码使用Pull Up Method(方法上移),将它移入父类。
  3. 两个互为兄弟的子类代码类似,并非完全相同。
    • 首先采用Extract Method(提炼函数)区分相同部分和差异部分代码,构成单独函数。
    • 运用Form Template Method(塑造模板函数)获得一个Template Method设计模式。
    • 使用Substitute Algorithm(替换算法)将其他函数的算法替换掉。
  4. 两个毫不相干的类含有相同的代码。
    • 对其中一个类考虑使用Extract Class(提炼类),将重复的代码提炼到一个独立的类中,然后在另一个类中使用这个新类。或者重复代码的函数属于第三个类,这两个类都引用第三个类。

转载于:https://www.cnblogs.com/zwffff/archive/2010/09/03/1817074.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值