导航菜单

软件工程/常用设计模式
课程进度 44% · 第3/5章3/5章 · 标签 1/5
1

设计模式概述

设计模式是软件开发中常见问题的可重用解决方案,它们是在特定场景下解决特定问题的经验总结。设计模式可以帮助我们写出更易维护、更易理解的代码。

设计模式的分类

创建型模式:关注对象的创建过程,将创建与使用分离。包括单例模式、工厂方法模式、抽象工厂模式、建造者模式、原型模式。

结构型模式:关注类和对象的组合,描述如何将类或对象组合成更大的结构。包括适配器模式、桥接模式、组合模式、装饰器模式、外观模式、享元模式、代理模式。

行为型模式:关注对象之间的责任分配,描述对象之间如何协作。包括责任链模式、命令模式、解释器模式、迭代器模式、中介者模式、备忘录模式、观察者模式、状态模式、策略模式、模板方法模式、访问者模式。

2

设计原则与适用场景

SOLID设计原则

  • 开闭原则(OCP):软件实体应该对扩展开放,对修改关闭
  • 单一职责原则(SRP):一个类应该只有一个引起它变化的原因
  • 里氏替换原则(LSP):子类必须能够替换其父类
  • 接口隔离原则(ISP):使用多个专门的接口比使用单个总接口要好
  • 依赖倒置原则(DIP):高层模块不应该依赖低层模块,两者都应该依赖抽象

何时使用设计模式

  • 需要解决特定问题时
  • 需要提高代码复用性时
  • 需要提高代码可维护性时
  • 需要提高代码可扩展性时
  • 需要提高代码可测试性时

何时不使用设计模式

  • 过度设计时
  • 简单问题复杂化时
  • 团队不熟悉该模式时
  • 维护成本过高时
  • 性能要求极高时