23种常见设计模式
2024-01-10 10:22:40 0 举报
AI智能生成
详细完整的设计模式,附有java代码示例,简洁清晰
作者其他创作
大纲/内容
UML类图
类与类之间的关系
依赖
关联
聚合
组合
继承(泛化)
实现
7大软件设计原则
单一职责原则
确保每一个类或方法具有单一职责,不要做与核心不相干的事情
开闭原则
对扩展开放,对修改关闭
里氏替换原则<br>
子类型必须能够替换掉它们的父类型
依赖倒置原则
高层模块不应该依赖低层模块, 两个都应该依赖抽象<br>
接口隔离原则
迪米特法则
一个软件实体应当尽可能少地与其他实体发生相互作用
合成复用原则
尽量先使用组合或者聚合等关联关系来实现,其次才考虑使用继承关系来实现。<br>
创建型模式
单例模式
DCL
静态内部类
枚举
简单工厂
结构
工厂模式
定义
结构
优缺点
抽象工程模式
原型模式
浅克隆
Object.clone()
实现 Cloneable
深克隆
对象流的序列化和反序列化
建造者模式
定义
结构
使用场景
结构型模式
<font color="#b71c1c"><b>代理模式</b></font>
静态代理
JDK
接口代理,本质给目标对象接口生成新的动态实现类对象
cglib
继承代理,本质给目标对象生成子类对象
<font color="#b71c1c"><b>适配器模式</b></font>
定义
类适配器模式
对象适配器模式
应用场景
装饰者模式
定义
静态代理和装饰者的区别?
桥接模式
定义
外观模式(门面模式)<br>
定义
优缺点
使用场景
组合模式(部分整体模式)
定义
<font color="#b71c1c"><b>享元模式(池化)</b></font>
定义
优缺点
使用场景
行为型模式
<font color="#b71c1c"><b>模板方法</b></font>
定义
结构
欧电 Service 父类使用的模板方法
优缺点
<font color="#b71c1c"><b>策略模式</b></font>
定义
结构
优缺点
命令模式
<font color="#b71c1c"><b>责任链模式</b></font>
定义
结构
欧电 Mongo存储的责任链处理
优缺点
状态模式
<font color="#b71c1c"><b>观察者模式</b></font>
定义
优缺点
中介者模式
定义
引入中介者模式,那么同事类之间的关系将变为星型结构,从下右图中可以看到,任何一个类的变动,只会影响的类本身,以及中介者,这样就减小了系统的耦合。一个好的设计,必定不会把所有的对象关系处理逻辑封装在本类中,而是使用一个专门的类来管理那些不属于自己的行为。
结构
优缺点
迭代器模式
定义
访问者模式<br>
备忘录模式
解释器模式
0 条评论
下一页