第三章 代码中的坏味道

一、Duplicated Code(重复代码)
1、同一个类中的两个函数含有相同表达式。采用Extract Method提炼出重复的代码。
2、两个互为兄弟的子类内含有重复表达式。对每个类都使用Extract Method提炼出重复的代码,然后在对被提炼出的代码使用Pull Up Method,将它推入父类中。如果两个兄弟类中的代码只是类似而非相同时,使用Extract Method将类似部分的相同部分和不同部分分别提炼为两个函数,使用Form Template Method(模板设计模式)。如果有些函数以不同的算法做相同的事,可以选择其中较清晰的一个,并使用Substitute Algorithm将其他函数的算法替换掉。
3、如果两个毫不相关的类出现Duplicated Code,考虑将其中一个使用Extract Class,将重复代码提炼到一个独立的类中,然后分别使用新类。但是可能这个共同使用的函数可能放到其中的一个类中更合适,或者也可能这个函数适合存在于第三个已经存在的类中。
  

你可能感兴趣的:(代码)