重构 改善既有代码的设计(读书笔记2)
// 什么时候执行重构——代码的坏味道
// 1.重复的代码
// 2.过长的方法(当一段代码你觉得别人看起来困难,你可能需要添加注释的时候,其实你可以抽取成一个方法,然后标注一个优雅的方法名)
// 3.庞大的类(很有可能职责过多,职责单一是一种很好的设计)
// 4.过长的参数列表(让使用者很疲惫)
// 5.发散式变化(添加一个功能,可能引起多处变化)
// 6.依恋情节(一个类中的方法,对自己类的关注少于其他类,比如这个方法多次调用另外一个类的方法,那么,可见这个方法的位置有问题)
// 7.大量的switch语句,可以使用多态代替。
// 8.平衡继承体系(当你在一个类簇中增加一个子类,则必须在另外一个类簇中增加子类),让一个类簇子类引用另外一个类簇子类。???这里没有搞明白
// 9.可恶的临时变量(有一些实例变量,只是在很少的情况下使用),这个时候,可以把它抽取成一个单独的类。
// 10.长长的消息引用链,这个很危险,修改一个地方,则可能修改很多地方,而且代码看起来很累。
// 11.两个类过度耦合,不断的去探索别人的private,这个时候三种方案:1.移动属性,2.移动方法,3.抽取新类。
// 12.纯数据类是很幼稚的行为,程序中其他类可能大量的访问它。我们应该给它增加一些方法,让它实用。