设计模式六大原则

  1. 开闭原则(Open Closed Principle, OCP):一个软件实体如类、模块和函数应该对扩展开放,对修改关闭。这意味着软件实体应尽量在不修改原有代码的情况下进行扩展。12
  2. 里氏代换原则(Liskov Substitution Principle, LSP):任何基类可以出现的地方,子类一定可以出现。这是继承复用的基石,只有当衍生类可以替换掉基类,软件单位的功能不受到影响时,基类才能真正被复用。13
  3. 单一职责原则(Single Responsibility Principle, SRP):一个类只负责一项职责。这有助于降低类的复杂性,提高可读性和可维护性。13
  4. 依赖倒置原则(Dependence Inversion Principle, DIP):高层模块不应该依赖低层模块,两者都应依赖其抽象。这降低了客户与实现模块间的耦合,提高了系统的稳定性。57
  5. 接口隔离原则(Interface Segregation Principle, ISP):客户端不应该依赖它不需要的接口;一个类对另一个类的依赖应该建立在最小的接口上。这有助于减少不必要的依赖,提高系统的灵活性。17
  6. 迪米特法则(Law of Demeter, LOD),又称最少知道原则:一个对象应该对其他对象保持最少的了解。这降低了类与类之间的耦合,减少了不必要的交互。1

这些原则是面向对象设计和编程中的重要指导原则,帮助开发者创建可维护、可扩展和稳定的软件系统。

相关推荐
xiaofeiyang15016 分钟前
第六章 · 桥接 — 三支毛笔,画出九种颜色
设计模式
Shadow(⊙o⊙)14 小时前
OTOL设计模式 One Thread One Loop
服务器·网络·设计模式
sarasuki1 天前
如何让LLM 能在半夜偷偷打开网易云呢?
人工智能·设计模式·agent
小王师傅661 天前
【设计模式】装饰模式(四):框架源码实战——从 Java I/O 到 Spring 到 MyBatis
java·设计模式
执明wa1 天前
Android RecyclerView 多类型, 多种 Item
android·xml·开发语言·设计模式·android studio
sarasuki1 天前
如何让 Agent 获取更多的能力?插件 / 技能系统
人工智能·设计模式·agent
sarasuki2 天前
如何让 Agent 安全运行你的命令 :命令分级 + Hook + 读写锁
人工智能·设计模式·agent
Zane19942 天前
技术不难,为什么项目却越改越不敢动?聊聊复杂系统开发该怎么想
设计模式
geovindu2 天前
rust: Factory Method Pattern
开发语言·设计模式·rust·工厂方法模式·创建型模式
一木 之林2 天前
第 8 节 C++ 设计模式在 AI 推理 SDK 和 Agent 工具运行时中如何落地
c++·人工智能·设计模式