【设计模式】6大设计原则和23种设计模式-I、6大设计原则

时间:2025-01-17 20:32:51
  1. 单一职责原则(SRP, Single Responsibility Principle)

    • 每个类应该只有一个引起变化的原因,职责应该保持单一。
    • 目标:高内聚,低耦合。
  2. 开闭原则(OCP, Open/Closed Principle)

    • 软件实体(类、模块、函数等)应该对扩展开放,对修改关闭。
    • 目标:通过扩展实现变化,而非直接修改代码。
  3. 里氏替换原则(LSP, Liskov Substitution Principle)

    • 子类必须能够替代其父类而不改变程序的正确性。
    • 目标:保证继承的正确性。
  4. 依赖倒置原则(DIP, Dependency Inversion Principle)

    • 高层模块不依赖于低层模块,二者都应该依赖于抽象(接口/抽象类)。
    • 目标:面向接口编程,解耦高层与底层。
  5. 接口隔离原则(ISP, Interface Segregation Principle)

    • 一个类不应该强制依赖不需要的接口,接口应该小而专一。
    • 目标:避免对一个类造成无关的强耦合。

以上5种原则常被称为SOLID 原则

  1. 迪米特法则(LoD, Law of Demeter,又称最少知道原则)
    • 一个对象应该尽量少地了解其他对象,应通过中介转交信息而非直接依赖。
    • 目标:降低对象之间的耦合性。