课程进度 44% · 第3/5章第3/5章 · 标签 1/5
— 1 —
设计模式概述
设计模式是软件开发中常见问题的可重用解决方案,它们是在特定场景下解决特定问题的经验总结。设计模式可以帮助我们写出更易维护、更易理解的代码。
设计模式的分类
创建型模式:关注对象的创建过程,将创建与使用分离。包括单例模式、工厂方法模式、抽象工厂模式、建造者模式、原型模式。
结构型模式:关注类和对象的组合,描述如何将类或对象组合成更大的结构。包括适配器模式、桥接模式、组合模式、装饰器模式、外观模式、享元模式、代理模式。
行为型模式:关注对象之间的责任分配,描述对象之间如何协作。包括责任链模式、命令模式、解释器模式、迭代器模式、中介者模式、备忘录模式、观察者模式、状态模式、策略模式、模板方法模式、访问者模式。
— 2 —
设计原则与适用场景
SOLID设计原则
- 开闭原则(OCP):软件实体应该对扩展开放,对修改关闭
- 单一职责原则(SRP):一个类应该只有一个引起它变化的原因
- 里氏替换原则(LSP):子类必须能够替换其父类
- 接口隔离原则(ISP):使用多个专门的接口比使用单个总接口要好
- 依赖倒置原则(DIP):高层模块不应该依赖低层模块,两者都应该依赖抽象
何时使用设计模式
- 需要解决特定问题时
- 需要提高代码复用性时
- 需要提高代码可维护性时
- 需要提高代码可扩展性时
- 需要提高代码可测试性时
何时不使用设计模式
- 过度设计时
- 简单问题复杂化时
- 团队不熟悉该模式时
- 维护成本过高时
- 性能要求极高时