Administrator
发布于 2025-08-29 / 0 阅读
0
0

浅析设计模式-23种设计模式剖析

    《Design Patterns: Elements of Reusable Object-Oriented Software》

------ 尝试构建高效、可维护和可扩展的方式来构建软件系统。

#### 1.设计原则:

- 单一职责原则(SRP):一个类只做一件事

- 开闭原则(OCP):对扩展开放,对修改关闭

- 里氏替换原则(LSP):子类应能替换父类

- 接口隔离原则(ISP):避免臃肿接口

- 依赖倒置原则(DIP):依赖抽象而非实现

设计模式是软件设计中常见问题的可重用解决方案,分为三大类:这些模式由"四人帮"(GoF)在《设计模式:可复用面向对象软件的基础》一书中提出,是面向对象设计的重要指导原则。

#### 2.创建型模式 (5种)

1. 单例模式(Singleton) - 确保一个类只有一个实例

2. 工厂方法模式(Factory Method) - 定义创建对象的接口,让子类决定实例化哪个类

3. 抽象工厂模式(Abstract Factory) - 创建相关或依赖对象的家族

4. 建造者模式(Builder) - 分离复杂对象的构建与表示

5. 原型模式(Prototype) - 通过复制现有对象来创建新对象

#### 3.结构型模式 (7种)

1. 适配器模式(Adapter) - 转换接口以兼容不同类

2. 桥接模式(Bridge) - 分离抽象与实现

3. 组合模式(Composite) - 树形结构处理对象集合

4. 装饰器模式(Decorator) - 动态添加职责

5. 外观模式(Facade) - 简化复杂子系统接口

6. 享元模式(Flyweight) - 共享对象以减少内存使用

7. 代理模式(Proxy) - 为其他对象提供代理或占位符

#### 4.行为型模式 (11种)

1. 责任链模式(Chain of Responsibility) - 请求的链式处理

2. 命令模式(Command) - 封装请求为对象

3. 解释器模式(Interpreter) - 定义语言的文法表示

4. 迭代器模式(Iterator) - 顺序访问集合元素

5. 中介者模式(Mediator) - 集中对象间的交互

6. 备忘录模式(Memento) - 捕获并恢复对象状态

7. 观察者模式(Observer) - 对象间的依赖通知

8. 状态模式(State) - 对象状态改变行为

9. 策略模式(Strategy) - 封装算法族

10. 模板方法模式(Template Method) - 定义算法骨架

11. 访问者模式(Visitor) - 分离算法与对象结构


评论