GOF23
group of four
23种设计模式
设计模式、思维–>实践
创建型模式
单例、工厂、抽象工厂、建造者、原型模式(5)
结构型模式
适配器、桥接、装饰、组合、外观、享元、代理模式(7)
行为型模式
模板方法、命令、迭代器、观察者、中介者、备忘录、解释器、状态、策略、责任链、访问者(11)
面向对象设计的六大原则
单一职责原则:一个类只担负一个职责
开闭原则:对扩展开放,对修改关闭
里氏替换原则:只要父类能出现的地方子类就可以出现,而且替换为子类也不会产生任何异常
依赖倒置原则:高层模块不应该依赖底层模块,两者都应该依赖其抽象;抽象不依赖细节;细节以来抽象
接口隔离原则:客户端不应该依赖它不需要的接口
迪米特原则:一个对象应该对其他对象有最少的了解(高内聚、低耦合)