重构 后4章
处理继承关系
如果子类拥有相同的字段,将该字段移至超类
如果子类拥有相同的函数,将该函数移至超类
在超类中新建构造函数,完成相同的功能,在子类中调用
超类中只和子类相关的函数,移到子类中
超类中只和子类相关的字段,移到子类中
类中某些特性只被某些实例用到,可以新建一个子类,将那部分特性移到子类中
如果两个类有相似特性,可以为两个类建立一个超类,将相同特性移至超类
继承改委托
子类只使用超类的一部分,或者根本不需要继承,可以在子类中新建一个超类字段,改为委托超类,以去掉继承关系
委托改继承
如果为了使用委托,经常编写极简单的委托函数,可以把委托改为继承
大型重构
某个继承体系同时承担两项责任,可以建立两个继承体系,通过委托关系让其中一个可以调用另一个
将过程化设计转化为对象设计
对于过程化风格的代码,将数据记录变为对象,将大块行为分成小块,并将行为移到相关对象中
将领域和表述/显示分离
将领域逻辑分离出来,为它们建立独立的领域类,MVC模式
提炼继承体系
某个类做了太多工作,其中一部分是以大量条件表达式完成的,建立继承体系,以一个子类表示一种特殊情况

浙公网安备 33010602011771号