六大设计原则:语义与意义
更新时间:2026-08-25。设计模式是"招式",设计原则是"心法"。这里把面向对象设计的六大原则独立成文,逐一论述语义(是什么、准确定义)与意义(为什么重要、违反代价),每篇含"违反 vs 守好"对比类图与实践检查清单。
六大原则总览
| 原则 | 一句话语义 | 一句话意义 | 侧重维度 |
|---|---|---|---|
| 单一职责 SRP | 一个类只有一个变化原因 | 变更被类边界隔离、可独立测试 | 类的职责边界 |
| 开闭 OCP | 对扩展开放、对修改关闭 | 新需求走新增、旧代码冻结 | 扩展方式 |
| 里氏替换 LSP | 子类必须可替换父类 | 多态正确性的契约保障 | 继承契约 |
| 接口隔离 ISP | 客户端不依赖它不用的方法 | 接口按角色切分、传递依赖变少 | 接口宽度 |
| 依赖倒置 DIP | 高层与低层都依赖抽象 | 换实现/测试/并行开发成本归零 | 依赖方向 |
| 迪米特 LoD | 只和直接朋友说话 | 沟通深度受限、封装不被撕破 | 沟通范围 |
原则之间的内在关系

阅读顺序建议
- 先读 SRP 与 OCP:理解"职责边界"与"扩展方式"这对总纲目标;
- 再读 DIP 与 ISP:掌握"依赖抽象、按角色切接口"两个落地手段;
- 最后读 LSP 与 LoD:理解"继承契约"与"沟通范围"两个保障性约束。
每篇末尾的"与设计模式的关系"表格,把原则与具体模式对应起来,可作为模式选型的指路牌。
一句话总结
六大设计原则 = SRP 划职责、OCP 定扩展、LSP 保替换、ISP 收接口、DIP 指方向、LoD 限沟通——先懂心法再练招式,模式才不会变成机械套用。