一、设计模式7大原则
1.单一职责原则 (Single Responsibility Principle) 在类级别和方法级别进行职责规划,专人专事
2.开放-关闭原则 (Open-Closed Principle) 增加接口功能时,尽可能不要修改原有代码
3.里氏替换原则 (Liskov Substitution Principle) 子类继承父类时,尽量不要重写父类的方法
4.依赖倒转原则 (Dependence Inversion Principle) 从抽象到形象,模糊到具体,低层依赖高层,不要反过来
5.接口隔离原则 (Interface Segregation Principle) 对接口细分,方法要满足最小实现,不多也不少
6.迪米特法则(Law Of Demeter)A类调用B类,B类的方法实现逻辑不要对A类暴露,尽量封装在B类中
7.组合/聚合复用原则 (Composite/Aggregate Reuse Principle) 将B对象传到A类,那A就能使用B类的方法
二、设计模式有三大类
创建型模式(5):
工厂方法模式、抽象工厂模式、单例模式、建造者模式、原型模式。
结构型模式(7):
适配器模式、装饰器模式(套娃)、代理模式、外观模式、桥接模式、组合模式、享元模式。
行为型模式(8):
策略模式、模板方法模式、观察者模式、迭代子模式、责任链模式、命令模式、备忘录模式、状态 模式、访问者模式、中介者模式、解释器模式
结构型:
适配器模式(Adapter Pattern):把一个类的接口变换成客户端所能接受的另一种接口,从而使两个接口不匹配而无法在一起工作的两个类能够在一起工作

伪代码1:AdapterImpl extends B implements IAdapter (使用继承不推荐)
伪代码2:AdapterImpl ( B b) implements IAdapter (使用组合)
伪代码3:**AdapterSpec{选择重写部分方法} extends AbstractAdapter{ 全空方法实现} implements IAdapter
装饰器模式(Decorator Pattern):不改变被装饰对象的接口,而是保持原有的接口,增强原有对象的功能,或改变原有对象的处理方式而增提高性能

注意:适配器模式与装饰器模式本质的区别,一个改变接口类型一个不改变接口类型