首页 > 其他分享 >【设计模式之禅】单一职责

【设计模式之禅】单一职责

时间:2023-08-14 23:35:19浏览次数:44  
标签:封装 职责 之禅 完后 设计模式 单一

最近前辈推荐我读《设计模式之禅》这本书,原因是我写的代码质量实在是一言难尽,开发速度很快,但是bug数就很多了,设计原则这种知识就需要掌握

  写这篇文主要是记录自己的学习以及督促自己

  第一章【单一职责】

  从我理解的层面来谈谈单一原则:明确每个类每个方法的任务,只做一件事,不能一法两用

  这也是我最大的一点感受

 

  尤其是在看这张图的时候,如果是我的话,我肯定会写在一起,不可能分的这么细,所以单一职责的难点就是:很难划分职责

  其次他的好处:

    ● 类的复杂性降低,实现什么职责都有清晰明确的定义;

    ● 可读性提高,复杂性降低

    ● 变更引起的风险降低

  我认为不好的点:

    维护性并不是特别高吧,当业务很复杂的情况下,这种拆分,会变得很冗余,物极必反可能是这个道理

  实际应用:

    "我的建议是接口一定要做到单一职责,类的设计尽量做到只有一个原因引起变化"这是作者原话,看完后我就记得我写过的一段代码,通过传type跳转不同业务逻辑的方案,看完后我就会把单一原则和封装结合在一起去想,什么是可以进行封装的?业务逻辑的复用吗?那也算是完成很多不同的事,这样封装又不满足单一职责了,不知道评论区的大佬能不能帮我解答一下,非常感谢!!!!

 

标签:封装,职责,之禅,完后,设计模式,单一
From: https://www.cnblogs.com/GG-Bond1/p/17630063.html

相关文章

  • 设计模式的六大原则
    开放封闭原则(OpenClosePrinciple)对外扩展是开放的,对内修改是封闭的,目的是保证程序的可扩展性以及可维护性 里氏代换原则(LiskovSubstitutionPrinciple)子类可以扩展父类的功能,但不能改变父类原有的功能。规定了子类不得重写父类的普通方法,只能重写父类的抽象方法,如果在设......
  • 设计模式--策略模式
    简介策略模式是一种行为设计模式,它将一组行为转换为对象,并使其在原始上下文对象内部能够相互替换原始对象被称为上下文,它包含指向策略对象的引用并将执行行为的任务分派给策略对象组成策略接口(Strategy):所有具体策略的通用接口,它声明了一个上下文用于执行策略的方法具体......
  • 设计模式大全:覆盖各类场景的实用模式与结构图
    设计模式大全:覆盖各类场景的实用模式与结构图目录设计模式大全:覆盖各类场景的实用模式与结构图1、设计模式六大原则(SOLID)2、设计模式分类及适用场景3、GOF经典设计模式及其结构图3-1、创建型1)工厂模式-FactoryPattern2)抽象工厂模式-AbstractFactoryPattern3)单例模式-Singleton......
  • 13 桥接模式 -- go语言设计模式
    桥接模式是将抽象部分与它的实现部分分离,使它们都可以独立地变化。它是一种对象结构型模式,又称为柄体(HandleandBody)模式或接口(interface)模式。桥接模式的实现代码packagemainimport"fmt"//发送信息的具体实现(操作)typeMessageImplementerinterface{ send(test,......
  • Java中常用的设计模式
    Java中常用的设计模式有以下几种:单例模式(SingletonPattern):确保一个类只有一个实例,并提供全局访问点。工厂模式(FactoryPattern):通过工厂类创建对象,隐藏对象的实例化过程。抽象工厂模式(AbstractFactoryPattern):提供一个创建一系列相关或相互依赖对象的接口,而无需指定具体类。建造者......
  • 简单工厂设计模式
    一.意图简单工厂模式(SimpleFactory) 又叫静态工厂方法(StaticFactoryMethod)模式。简单工厂模式通常是定义一个工厂类,这个类可以根据不同变量返回不同类的产品实例。 二.特点根据外部传入的类型确定要创建哪一个具体类的对象,通过简单工厂模式,客户端无需关注对象如何创建......
  • 模板设计模式
    一.意图模板方法模式 (TemplateMethod)是一种行为设计模式,它在超类中定义了一个算法的框架,允许子类在不修改结构的情况下重写算法的特定步骤。模板方法模式是所有模式中最为常见的几个模式之一,是基于继承的代码复用的基本技术。,没有关联关系。因此,在模板方法模式的类结构......
  • VTK 实例8:command与observe设计模式(当交互使相机变化时打印出当前相机的坐标,当发生拾
    1#include"vtkAutoInit.h"2VTK_MODULE_INIT(vtkRenderingOpenGL2);3VTK_MODULE_INIT(vtkInteractionStyle);4#include<vtkConeSource.h>5#include<vtkPolyDataMapper.h>6#include<vtkRenderer.h>7#include<vtkRende......
  • 10个微服务设计模式
    微服务设计模式是一种指导微服务架构设计和开发的一系列原则和实践。微服务设计模式的目的是为了解决微服务架构中遇到的一些常见的问题和挑战,比如服务划分、服务通信、服务治理、服务测试等。微服务设计模式可以帮助我们构建出高效、可靠、可扩展、可维护的微服务系统。本文将......
  • .net 常用几个设计模式
    .NETCore框架支持许多设计模式,以下是一些常见的设计模式:一、抽象工厂模式(AbstractFactoryPattern):提供一种将一组相关或相互依赖的对象创建起来的方式,而无需指定其具体类。抽象工厂模式是一种创建型设计模式,它提供了一个接口来创建一系列与特定类无关的对象,而无需指定这些对象......