面向对象的五大基本原则(SOLID)
面向对象的五大基本原则(SOLID)
- 概述
- SRP(Single responsibility principle): 单一职责原则
- OCP: 开闭原则。
概述
出自《架构整洁之道》这本书,参考:《架构整洁之道》 架构笔记, 码了,回头看一下。简单来说 SOLID就是面向对象编程的五大基本原则的英文缩写的首字母连起来。
- SRP(Single responsibility principle): 单一职责原则。
- OCP: 开闭原则。
- LSP: 里氏替换原则。
- ISP: 接口隔离原则。
- DIP: 依赖反转原则
下面对这些原则进行逐一详细介绍。(还没有写完,后面补)
SRP(Single responsibility principle): 单一职责原则
百度百科参考
一个类或者模块应该有且只有一个改变的原因。
碎碎念:
反射是代码可以访问、修改自己元数据的能力,其中元数据包括方法数据和属性数据,FuncData——和PropData(类内所有属性的数据表),他们被合称为MetaData参考)
c#的attribute特性 提供了一种扩展元数据的方法,可以用来做面向切面的编程。
AOP:面向切面的编程
C# / Pattern】C#中利用Attribute实现AOP(面向切面编程)
c# attribute
OCP: 开闭原则。
面向对象的五大基本原则(SOLID)相关推荐
- 随笔27 面向对象的五大基本原则
面向对象的五大基本原则 单一职责原则(Single-Resposibility Principle):一个类,最好只做一件事,只有一个引起它的变化.单一职责原则可以看做是低耦合.高内聚在面向对象原则上 ...
- JAVA面向对象的五大基本原则
文章目录 原则一:单一职责原则 原则二:开放封闭原则 原则三:LisKov替换原则 原则四:依赖倒置原则 原则五:接口隔离原则 了解面向对象的思想时,之前仅仅了解了面向对象的三大特性,最近才发现原来面 ...
- 面向对象的五大基本原则
面向对象的三大特性:封装.继承.多态 面向对象的七(或五大原则,前五项)大基本原则:单一职责原则(SRP) .开放封闭原则(OCP) .里氏替换原则(LSP). 依赖倒置原则(DIP). 接口隔 ...
- 学习Java编程面向对象的五大基本原则
Java 是面向对象的高级编程语言,类和对象是 Java 程序的构成核心.围绕着 Java 类和 Java 对象,有三大基本特性:封装是 Java 类的编写规范.继承是类与类之间联系的一种形式.而多态 ...
- 面向对象 三大特性 五大基本原则
2019独角兽企业重金招聘Python工程师标准>>> 以前一直认为程序中的类有使用到封装,继承,多态就是面向对象设计,其实不然 封装,继承,多态只是面向对象的三大特性,但是在设计程 ...
- 面向对象三大基本特征及五大基本原则介绍
目录 前言 一.面向过程和面向对象区别 二.面向对象的三大基本特征:封装.继承.多态 1.封装 2.继承 3.多态 三.面向对象的五大基本原则 1.单一职责原则(SRP) 2.开放封闭原则(OCP) ...
- 面向对象的五大原则与IOC
面向对象的五大基本原则 单一职责原则(SRP) 开放封闭原则(OCP) 里氏替换原则(LSP) 依赖倒置原则(DIP) 接口隔离原则(ISP) 单一职责原则(SRP) 一个类应该仅有一个引起它变化的原 ...
- 面向对象封装继承多态五大基本原则魔法方法反射
目录 面向对象 三大基本特征 五大基本原则 魔法方法 反射 面向对象 什么是面向对象 使用模板的思想,将世界万事万物使用对象来表示一个类型 面向对象和面向过程的区别: 面向对象的不就是使用程序处理事情 ...
- 面向对象的三大基本特性,五大基本原则。
三大特性是:封装,继承,多态 所谓封装,也就是把客观事物封装成抽象的类,并且类可以把自己的数据和方法只让可信的类或者对象操作,对不可信的进行信息隐藏.封装是面向对象的特征之一,是对象和类概念的主要特性 ...
最新文章
- Edit Control读取与写入踩坑实例与使用方法
- java rest tomcat_java – REST服务返回HTTP 204(Tomcat / Linux)
- 再向“乡镇青年”下沉,“资讯界拼多多”趣头条也难成为另一个拼多多
- emc整改措施及案例_12.5EMC一点通||EMC整改措施
- python xlrd使用_python使用xlrd 操作Excel读写
- extjs 实现 NumberField 即时计算
- spring集成mybatis后怎么在控制台打印sql语句
- 如何使用Beyond Compare中心窗格
- centos7 配置阿里yum源
- linux设置ipsan_Linux挂载IPSAN和FCSAN操作
- 【教育心理学】学习理论流派——行为主义学习理论
- Eclipse 绿豆沙
- UE4学习笔记:学习UE4中的UMG(图形UI设计器)工具(一): Widget Blueprint控件蓝图
- html网页背景图片 菜鸟教程,CSS3 背景
- winform高效导出Excel带格式设置
- excel表格内容合并的技巧?
- mysql根据字长查询_MYSQL常用查命令
- Win10 任务栏透明工具-TranslucentTB
- 读源码品Caffe - 结构流程篇
- 深度linux qq下载,Deepin内置的软件商店里收录QQ for Linux版,方便用户安装