第三章 代码的坏味道
过大的类-Large Class
问题:出现太多的实例变量
解决:Extract Class,将实例变量一起提炼至新类。如果这个类适合做子类,可以用Extract Subclass。
问题:类的代码太多
解决:将多余的东西消弭于类内部。也就是在类的内部采用Extract Class和Extract Subclass进行重构先。
问题:如果类的代码还是太多
解决:先确定客户端如何使用它们,然后用Extract Interface提炼出一个新的接口。
问题:如果出现问题的类是一个GUI类怎么办
解决:把需要的行为和数据移到一个独立的领域对象去。Duplicate Observed Data会具体处理这种情况。