设计模式六大原则:单一职责原则

目录:

  设计模式六大原则:单一职责原则

  设计模式六大原则:接口隔离原则

  设计模式六大原则:依赖倒置原则

  设计模式六大原则:里氏替换原则

  设计模式六大原则:迪米特法则

  设计模式六大原则:开闭原则

单一职责原则:

  对象不应承担太多功能,正如一心不能而用,比如太多的工作(种类)会使人崩溃。唯有专注才能保证对象的高内聚;唯有唯一,才能保证对象的细粒度。

解决问题:

  假如有A和B两个类,当A需求发生改变需要修改时,不能导致B类出问题。

现状:

  在实际情况很难去做到单一职责原则,因为随着业务的不断变更,类的职责也在发生着变化,即职责扩散。如类A完成职责P的功能,但是随着后期业务细化,职责P分解成更小粒度的P1与P2,这时根据单一职责原则则需要拆分类A以分别满足细分后的职责P1和P2。但是实际开发环节,若类的逻辑足够简单,可以在代码上级别上违背单一职责原则;若类的方法足够少,可以在方法级别上违背单一职责原则。

经典案例:

  用一个类描述动物呼吸的场景

1 namespace MyDemo
 2 {
 3     internal class Animal
 4     {
 5         public void breath(string animal)
 6         {
 7             Console.WriteLine($"{animal}呼吸空气");
 8         }
 9     }
10 }

view code

1 namespace MyDemo
 2 {
 3     internal class Program
 4     {
 5         private static void Main(string[] args)
 6         {
 7             Animal animal = new Animal();
 8             animal.breath("
(0)

相关推荐

  • 设计模式——六大设计原则

    文章目录 一.单一职责原则 二.里式替换原则 三.依赖倒置原则 四.接口隔离原则 五.迪米特法则 六.开闭原则 一.单一职责原则 单一职责原则简称 SRP,他想表达的就是字面意思,一个类只承担一个职责 ...

  • 二十三种设计模式修炼手册

    不知不觉,在开发这条道路上摸爬打滚也有些年头了,偶尔回头看看以前写的代码,真可谓粗糙至极.当然了,那时候还是小白,代码写得难看些情有可原,不过现在可不能再用以前的标准去衡量自己了,因此掌握一些高级架构 ...

  • 面向对象设计

    面向对象程序由对象组成,对象包括数据和对数据进行操作的过程(通常称为方法). 面向对象设计最困难的部分是将系统分解成对象集合.因为要考虑许多因素:封装.粒度.依赖关系.灵活性.性能.扩展.复用等等,并 ...

  • 设计模式-概述

    面向对象 特性 封装:隐藏内部实现: 继承:复用现有代码: 多态:改写对象行为. 目标 面向对象设计的目标是设计出高内聚.低耦合的应用程序,最大程度的实现程序的复用,以应对复杂的需求变化. 设计原则 ...

  • 面向对象六大原则

    这篇文章主要讲的是面向对象设计中,应该遵循的六大原则.只有掌握了这些原则,才能更好的理解设计模式. 我们接下来要介绍以下6个内容. 单一职责原则--SRP 开闭原则--OCP 里氏替换原则--LSP ...

  • 接口(二)

    在类的多态性(三)中写过"子类即为父类实例"的应用,也用了例题来说明. 在接口的使用过程中经常用到多态,在后面的图形界面中也会再介绍. 本篇再以一个简单的例子来说明. 1.有接口A ...

  • 设计模式的七大原则(1) --单一职责原则

    前言 最近工作中备受打击,之前设计的很多程序都被老大否决,需要重构,让我好好看看设计模式.之前对这一块内容的确不怎么重视,感觉枯燥无聊又派不上用场.后来沉下心来研究了一番... 我靠,原来如此,之前写 ...

  • 面向对象的六大原则之 单一职责原则——SRP

    SRP = Single Responsibility Principle   定义:就一个类而言,应该只有一个能引起他变化的原因.通俗的说,即一个类只负责一项职责.   作用: 1.减少了类之间的耦 ...

  • 六大设计原则(一)SRP单一职责原则

    单一职责原则SRP(Single reponsibility principle) BO(Business Object):业务对象 Biz(Business Logic):业务逻辑 SRP最简单的例 ...

  • 设计模式六大原则:开闭原则

    开闭原则(Open Close Principle): Software entities (classes, modules, functions, etc.) should be open for ...

  • 设计模式-六大原则

    设计模式的六大原则 单一职责原则(Single responsibility principle):一个类的职责应该单一 如果一个类职责过多,应该拆分 (类如果职责单一,那导致类修改的原因也会唯一,不 ...

  • 设计模式 - 七大设计原则(四)- 合成复用原则与设计原则总结

    概述 简单介绍一下七大设计原则: 开闭原则:是所有面向对象设计的核心,对扩展开放,对修改关闭 依赖倒置原则:针对接口编程,依赖于抽象而不依赖于具体 单一职责原则:一个接口只负责一件事情,只能有一个原因 ...

  • 多项独立权利要求的单一性原则的理解

    一.基本概念 [单一性]是指一件发明或者实用新型专利申请应当限于一项发明或者实用新型.属于一个总的发明构思的两项以上发明或者实用新型,可以作为一件申请提出.(专利法31.1) 一个总的发明构思,是指两 ...

  • 2021年民法典六大基本原则之公序良俗原则

    一.公序良俗原则 (一)含义 公序是指国家或者社会共同要求的公共秩序(经济秩序.社会秩序和伦理秩序),良俗是指国家或者社会一般的伦理和道德. (二)后果 违反公序良俗的,民事法律行为无效,留置权不设立 ...