☰分类导航

软件工程/设计模式
课程进度 31% · 第3/7章第3/7章 · 标签 1/6
— 1 —

设计模式概述

设计模式是软件设计中常见问题的典型解决方案。每个模式描述了在特定上下文中反复出现的问题的核心解决方案, 使开发者可以复用成功的设计经验,而不必重复发明轮子。学习时先指出变化发生在哪一处,再确定对象如何合作;如果一个简单函数已能清楚表达规则,就不必为了套用名称而增加接口。模式的收益应体现为修改范围缩小、依赖方向清楚和测试更容易,而不是类的数量增加。

GoF 23种设计模式分类

创建型模式(5种):处理对象的创建机制

  • 单例、工厂方法、抽象工厂、建造者、原型

结构型模式(7种):处理类或对象的组合

  • 适配器、桥接、组合、装饰、外观、享元、代理

行为型模式(11种):处理类或对象的交互和职责分配

  • 责任链、命令、解释器、迭代器、中介者、备忘录、观察者、状态、策略、模板方法、访问者
— 2 —

设计模式原则

设计模式遵循SOLID原则,这是面向对象设计的五大基本原则:

S - 单一职责:按导致变化的责任来源组织类

O - 开闭原则:对扩展开放,对修改关闭

L - 里氏替换:子类必须能替换父类

I - 接口隔离:接口应小而专,不要大而全

D - 依赖倒置:依赖抽象,不依赖具体

GoFSOLID创建型结构型行为型