设计模式全景
easy设计模式SOLID设计原则
什么是设计模式
设计模式是面向对象软件开发中反复出现的问题的经典解决方案。GoF(Gang of Four)在 1994 年总结了 23 种设计模式,分为三大类。
比喻:设计模式就像建筑领域的蓝图——你不需要每次盖房子都从零设计承重结构,直接使用经过验证的方案即可。
设计原则(SOLID)
| 原则 | 全称 | 含义 | 通俗理解 |
|---|---|---|---|
| S | 单一职责 (SRP) | 一个类只负责一件事 | 一个厨师只管做菜,不管端盘子 |
| O | 开闭原则 (OCP) | 对扩展开放,对修改关闭 | 加新功能写新代码,不改旧代码 |
| L | 里氏替换 (LSP) | 子类能替代父类使用 | 儿子能做老爸能做的所有事 |
| I | 接口隔离 (ISP) | 接口拆小,别强迫实现不需要的方法 | 别让飞机实现"潜水"接口 |
| D | 依赖倒置 (DIP) | 依赖抽象而非具体实现 | 插头插座用标准接口,不焊死 |
其他重要原则
- 迪米特法则(LoD):只和直接朋友交流,减少耦合
- 合成复用原则:优先用组合而非继承
- DRY(Don't Repeat Yourself):避免重复代码
23 种设计模式分类
| 类别 | 目标 | 模式 |
|---|---|---|
| 创建型(5种) | 如何创建对象 | 单例、工厂方法、抽象工厂、建造者、原型 |
| 结构型(7种) | 如何组合类和对象 | 适配器、代理、装饰器、外观、桥接、组合、享元 |
| 行为型(11种) | 对象间如何交互 | 策略、观察者、模板方法、责任链、迭代器、状态、命令、中介者、备忘录、访问者、解释器 |
生产高频模式
创建型: ★★★ 单例 ★★★ 工厂 ★★ 建造者
结构型: ★★★ 代理 ★★ 适配器 ★★ 装饰器
行为型: ★★★ 策略 ★★★ 观察者 ★★ 模板方法 ★★ 责任链
生产高频题
设计模式的六大原则?
SOLID(单一职责、开闭、里氏替换、接口隔离、依赖倒置)+ 迪米特法则。核心思想是高内聚低耦合。
设计模式的三大分类?
创建型(对象创建)、结构型(对象组合)、行为型(对象交互)。生产环境中最常应用的是单例、工厂、代理、策略、观察者模式。