设计模式(Java)

1.概念:

某一些特定的环境,解决特定的问题

2.设计模式遵循的原则(类设计,依赖关系)

开闭原则:

先做一个设计,需求改了,尽量不要改源代码,可以扩展功能

里氏变换原则:

子类继承父类,可以继承功能,尽量不要重写

依赖倒置原则:

高层不要依赖底层,抽象不要依赖具体,翻转过来

单一职责原则:

一个类做一个类的事情,不同的功能和职责拆开

接口隔离原则:

将庞大的接口拆分开,一种单一职责的体现,单一职责更注重细节,接口隔离更注重约束

迪米特原则:

尽量与自己交流,不要和陌生人说话,两个对象没有必要联系,不要交流,通过第三方完成

合成复用原则:

尽量使用组合关系,之后在考虑继承关系,装饰者模式->使用对象的组合扩展

3.23种设计模式

简单工厂模式不算是23种模式中的一种

创建型:(5种)

单例模式

工厂方法模式 ; 抽象工厂模式 ; 建造者模式 ; 原型模式;

结构型:(7种)

适配器; 装饰者; 代理模式(静态,动态);

外观模式; 桥接模式; 组合模式; 享元模式;

行为型:(11种)

策略模式; 模板(方法)模式 ; 观察者模式; 责任链模式

迭代器模式 ; 命令模式; 备忘录模式;

状态模式 ; 访问者模式; 中介者模式; 解析器模式;