设计原则
- 开闭原则
- 单一职责原则
- 接口隔离原则
- 里式替换原则
- 依赖倒置原则
- 合成复用原则
- 迪米特法则
设计模式
创建型(5种) :
工厂模式、抽象工厂模式、单例模式(重点)、原型模式、构建者模式
结构型(7种):
适配器模式、装饰模式、代理模式(重点) 、外观模式、桥接模式、组合模式、享元模式
行为型(11种):
模板方法模式、策略模式 、观察者模式、中介者模式、状态模式、 责任链模式 、 命令模式、迭代器模式、访问者模式、解释器模式、备忘录模式
重构
1.Duplicated Code(重复的代码)
2.Long Method(过长方法)
3.Large Class(过大类)
4.Long Parameter List(过长参数列)
5.Divergent Change(发散式变化)
6.Shotgun Surgery(霰弹式修改)
7.Feature Envy(依恋情结)
8.Data Clumps(数据泥团)
9.Primitive Obsession(基本型别偏执)
10.Switch Statements(switch惊悚现身)
11.Parallel Inheritance Hierarchies(平等继承体系)
12.Lazy Class(冗赘类)
13.Speculative Generality(夸夸其谈未来性)
14.Temporary Field(令人迷惑的暂时字段)
15.Message Chains(过度耦合的消息链)
16.Middle Man(中间转手人)
17.Inappropriate Intimacy(狎昵关系)
18.Alternative Classes with Different Interfaces(异曲同工的类)
19.Incomplete Library Class(不完美的程序库类)
20.Data Class(纯稚的数据类)
21.Refused Bequest(被拒绝的遗赠)
22.Comments(过多的注释)