设计模式六大原则

  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

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

相关推荐
Tiny_React18 小时前
Claude Code Skills 自优化架构设计
人工智能·设计模式
胖虎11 天前
iOS中的设计模式(十)- 中介者模式(从播放器场景理解中介者模式)
设计模式·中介者模式·解耦·ios中的设计模式
Geoking.1 天前
【设计模式】组合模式(Composite)详解
java·设计模式·组合模式
刀法孜然1 天前
23种设计模式 3 行为型模式 之3.6 mediator 中介者模式
设计模式·中介者模式
Yu_Lijing1 天前
基于C++的《Head First设计模式》笔记——单件模式
c++·笔记·设计模式
Geoking.1 天前
【设计模式】外观模式(Facade)详解
java·设计模式·外观模式
点云SLAM1 天前
C++设计模式之单例模式(Singleton)以及相关面试问题
c++·设计模式·面试·c++11·单例模式(singleton)
GISer_Jing2 天前
AI Agent 目标设定与异常处理
人工智能·设计模式·aigc
蔺太微2 天前
组合模式(Composite Pattern)
设计模式·组合模式
鱼跃鹰飞2 天前
DDD中的防腐层
java·设计模式·架构