设计模式的7大基本原则

概括:

1、单一职责原则(Single Responsibility Principle,SRP)

2、开放封闭原则(Open/Closed Principle,OCP)

3、里氏替换原则(Liskov Substitution Principle,LSP)

4、依赖倒置原则(Dependency Inversion Principle,DIP)

5、接口隔离原则(Interface Segregation Principle,ISP)

6、迪米特法则(Law of Demeter,LoD)

7、合成/聚合复用原则(Composition/Aggregation Reuse Principle,CARP)


单一职责原则(SRP):

一个类只负责一种职责,如果一个类有两个不同的职责, 如果职责1的需求发生变更而需要改变时,可能会造成职责2的执行错误。该原则鼓励将功能分解为小的、独立的单元,每个单元只负责一个事情。       


 开放封闭原则(OCP):

对于拓展是开放的,对于修改是关闭的。通过拓展现有代码来引入新功能,而不是通过修改现有的代码


里氏替换原则(LSP):

任何父类出现的地方,都可以用它的字类来替代,而不会导致系统出错,强调正确使用继承关系。


依赖倒置原则(DIP):

高层模块不应该依赖低层模块,两者应该都应该依赖于抽象。要求程序要依赖于抽象接口,而不是具体的实现,该原则通过引入抽象接口和抽象类来将高层模块和低层模块解耦。


接口隔离原则(ISP):

客户端不应该依赖它不需要的接口,即一个类对另一个类的依赖应该建立在最小的接口上。

接口应该小而专注,不应该包含其他多余的方法,不要使用一个大的总接口。


迪米特法则(LoD):

一个对象应该对其他对象保持最少的了解。保持对象之间的松耦合。


合成/聚合复用原则(CARP):

找出程序中可能需要变化之处,把他们独立出来,不要和不需要变化的代码混在一起。

针对接口编程,而非针对实现编程

尽量使用合成聚合的方式,而非使用继承

相关推荐

  1. 设计模式7基本原则

    2024-01-11 09:38:03       47 阅读
  2. 设计模式7基本原则

    2024-01-11 09:38:03       37 阅读
  3. 设计模式基本原则

    2024-01-11 09:38:03       34 阅读
  4. 设计模式7原则+类图关系

    2024-01-11 09:38:03       47 阅读
  5. 【C++】【设计模式原则

    2024-01-11 09:38:03       44 阅读
  6. C++|设计模式(〇)|设计模式原则

    2024-01-11 09:38:03       36 阅读
  7. 设计模式:面向对象设计原则

    2024-01-11 09:38:03       44 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-01-11 09:38:03       94 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-01-11 09:38:03       101 阅读
  3. 在Django里面运行非项目文件

    2024-01-11 09:38:03       82 阅读
  4. Python语言-面向对象

    2024-01-11 09:38:03       91 阅读

热门阅读

  1. http首部

    2024-01-11 09:38:03       58 阅读
  2. K8S---kubectl patch

    2024-01-11 09:38:03       59 阅读
  3. 用Promise实现util函数

    2024-01-11 09:38:03       54 阅读
  4. GPM合并资料整理-GEM部分

    2024-01-11 09:38:03       49 阅读
  5. 【架构详细解读】

    2024-01-11 09:38:03       44 阅读
  6. mysql 分组函数,分组查询

    2024-01-11 09:38:03       60 阅读
  7. GPT实战系列-让CodeGeeX2帮你写代码和注释

    2024-01-11 09:38:03       52 阅读
  8. RabbitMq

    RabbitMq

    2024-01-11 09:38:03      49 阅读
  9. 第十六章 正则的介绍和使用

    2024-01-11 09:38:03       55 阅读
  10. 2024秋招—国科微电子—系统测试工程师一面

    2024-01-11 09:38:03       45 阅读