关于重构,代码的坏味道,应该重构的代码(2)

18.中间转手人

对象的基本特征之一就是封装,对外部世界隐藏其内部细节。封装往往伴随着delegation(委托)。

但是如果过度应用委托,就会看到某个class接口有一半的函数都委托给其它class。这时你应该使用Remove Middle Man直接和实责对象打交道。

19.过度亲密

两个class过于亲密,花费太多时间去探究彼此的priavate成分。必须拆散。可以采用Move Method 和move field。或者运用Extract class 把两者共同点提炼到一个安全的地方。

20异曲同工的类

如果两个函数做着同一件事,请用rename Method根据他们的用途重新命名,反复运用move Method,或者运用extract superclass。


你可能感兴趣的:(关于重构,代码的坏味道,应该重构的代码(2))