什么是设计模式?
设计模式是前人在软件开发过程中反复踩坑、反复验证之后总结提炼出来的通用代码设计方案,相当于给出了一套现成的解题模板,根据实际场景直接套用即可
设计模式的作用
- 快速解决常见问题。根据现实场景选择对应的“解题模板”套用
- 提升代码扩展性。把变化的部分和不变的部分分开,复合开闭原则
- 降低沟通成本。用设计模式写出来的代码结构清晰,可读性高,易于理解
设计模式遵循的原则
- 单一职责原则。一个类只干一件事,职责越单一,改动时影响范围就越小
- 开闭原则。对扩展开放,对修改关闭
- 里氏替换原则。子类必须能替换父类使用,不能改变父类原有的行为契约。违反这条会导致多态失效
- 接口隔离原则。接口要小而精,不要定义一个大而全的接口强迫实现类实现一堆用不上的方法
- 依赖倒置原则。高层模块不要直接依赖底层模块,都依赖抽象。
- 迪米特法则。一个对象应该对其他对象保持最少的了解,只和直接朋友通信。能有效降低类之间的耦合度
常用的设计模式及分类
创建型设计模式
结构型设计模式
行为型设计模式