首页 > 其他分享 >SOLID原则笔记

SOLID原则笔记

时间:2024-04-03 23:11:21浏览次数:27  
标签:定义 原则 SOLID 笔记 一件 应该 替换 最初

 

SOLID

单一职责:

最初的定义是:“一个类的改变永远不应该有多个原因。”

新定义:“每个模块应该做一件事,并且做好”。

 

 

开闭原则

最初的定义是:“软件实体应该对扩展开放,但对修改关闭。”

新定义:“您应该能够使用和添加模块而无需重写它。”

 

里氏替换原则

原始定义:“如果 S 是 T 的子类型,则类型 T 的对象可以用类型 S 的对象替换,而不改变程序的任何所需属性。”

新定义: 如果一件事被声明为具有相同的行为方式,那么您应该能够用一件事替换另一件事。

 

接口隔离

最初的定义:“许多特定于客户端的接口比一个通用接口更好。”

新定义: “不要向客户展示超出他们需要的内容”。

 

 

依赖倒置

最初的定义:“依赖于抽象,而不是具体。”

 

新定义: “依赖于抽象,而不是具体。”

 

 

 

https://mp.weixin.qq.com/s/fahsZx16uBj3MhMyxv5iFg

标签:定义,原则,SOLID,笔记,一件,应该,替换,最初
From: https://www.cnblogs.com/huilei/p/18113693

相关文章

  • [笔记]石子合并问题整理(更新中)
    [Contents]无环,朴素算法,\(O(n^3)\)有环,朴素算法,\(O(n^3)\)GrsiaWachs、四边形不等式优化无环,朴素算法,\(O(n^3)\)例题:P1775石子合并(弱化版)用\(f[i][j]\)表示\(i\simj\)的最小得分,枚举长度\(len=2\simn\),对于每个长度,枚举左端点\(l\),算出右端点\(r\),然后再枚举从分割位置......
  • 【机器学习2021-李宏毅】学习笔记(一)
    基本概念结构化学习机器学习中的任务不只包括Regression和Classification两大类,还有StructureLearning,也就是函数的输出并不是一个标量或者一个类别,而是生成有结构的输出(比如图像、文本等)。误差曲面通过试不同的参数,然后计算对应情况下的loss,画出来的等高线图称为ErrorSurfa......
  • 轻松玩转书生·浦语大模型趣味 Demo——day2笔记
    本节课有四个任务:学习部署、玩角色扮演的agent项目,玩数学运算agent、玩写作agent 主要学习过程就是跟着视频,复制学习文档里的资料,完成demo的使用。主要目的是熟悉开发平台。视频:轻松玩转书生·浦语大模型趣味Demo_哔哩哔哩_bilibili资料:Tutorial/helloworld/hello_world.......
  • spring-5学习笔记
    Spring5-2023/08/23(稍后更新6)01初识Spring1.1简介Spring框架是由于软件开发的复杂性而创建的。Spring使用的是基本的JavaBean来完成以前只可能由EJB完成的事情。Spring是一个轻量级控制反转(IoC)和面向切面(AOP)的容器框架历史:2002,首次推出了Spring框架的雏形:interface21......
  • 电信aep—Ctwing平台使用笔记——mqttfx接入电信aep实现数据上传、命令下发。
    最近搞了电信平台,记录一下目录1.创建产品2.添加设备3.记录以下信息4.打开mqttfx​编辑5.试试​编辑6.建立属性7.建立服务8.打开mqttfx,输入主题与报文9.上传10指令下发1.创建产品2.添加设备3.记录以下信息4.打开mqttfx参数填写规则:1.BrokerAddress:从设......
  • 纯小白蓝桥杯备赛笔记--DAY9(搜索)
    文章目录三道例题学会DFS剪枝什么是剪枝数字王国之军训排队--2942特殊的三角形--3008特殊的多边形--3075DFS基础回溯简介回溯法模版例题N皇后--1508小朋友崇拜圈--182全球变暖--178记忆化搜索简介斐波那契数列混境之地5-3820地宫取宝-216三道例题学会DFS剪枝什......
  • OpenStack学习笔记04-认证Keystone
    OpenStack学习笔记04-认证KeystoneOpenStackLinux对着《云操作系统(OpenStack)》第四章做的。一、Keystone基本概念应该是只用在控制节点上安装,因为要用到数据库,而数据库只在控制节点上安装了。二、keystone数据库操作前面环境准备的时候给数据库设置的密码是abc123!,但是......
  • 第十一、十二章学习笔记
    读书笔记第11章-密码学工程设计原理与实际应用11.1Diffie-Hellman协议Diffie-Hellman协议是公钥密码学的里程碑,提出了一种有效的密钥管理方法。该协议允许双方在不安全的通信渠道上协商出相同的密钥,而不会被监听者获取。Diffie-Hellman协议的核心思想是使用一个加密密钥......
  • C/C++的部分笔记
    C/C++部分笔记1、纯虚函数纯虚函数是一种特殊的虚函数,基类定义后(~=0)必须由派生类重写,纯虚函数将父类上升为一个抽象类,无法实例化对象;抽象类是指具有纯虚函数的类;一个基类说明有纯虚函数,该基类的派生类可以是抽象类;抽象类只能作为基类来使用,其纯虚函数的实现由派生类给出。......
  • JavaWeb学习笔记——第十三天
    事务管理、AOP事务管理事务回顾事务是一组操作的集合,它是一个不可分割的工作单位,这些操作要么同时成功,要么同时失败。操作开启事务(一组操作开始前,开启事务):starttransaction/begin。提交事务(这组操作全部成功后,提交事务):commit。回滚事务(中间任何一个操作出现异常,回滚事......