当前位置: 首页 > news >正文

【设计模式笔记06】:单一职责原则 - 实践

文章目录

      • 单一职责原则 (SRP)
        • 1. 定义
        • 2. 分析与理解
        • 3. 实例:登录功能重构

单一职责原则 (SRP)

1. 定义

所有原则中最方便、也最基础的一个。它提供了两种等价的定义:就是单一职责原则

2. 分析与理解
  • 职责与复用性的关系:

    • 一个类(或者大到模块,小到方法)承担的职责越多,其内部的逻辑就越复杂,各个职责之间就可能存在耦合。
    • 这将导致它的可复用性越小想复用其中一个职责时,不得不把其他不相关的职责也一起引入,造成不必要的依赖和复杂性。就是。因为当你只
  • 高内聚与低耦合的基石:

    • 单一职责原则是搭建软件设计高内聚、低耦合的指导方针。
      • 高内聚通过: 指的是一个类或模块的内部,所有元素(方法、属性)都是为了同一个目标(单一职责)而紧密协作的。遵循SRP能够让类的内聚性变得非常高。
      • 低耦合通过: 指的是类与类之间的依赖关系要尽可能弱。如果一个类承担了多个职责,比如职责A和职责B,那么当因为职责A的需求变化而修改这个类时,可能会无意中影响到职责B的正常运作,这就是高耦合带来的风险。将职责分离,能够管用降低这种耦合。
  • 最轻松也最难的原则:

    • 简单在于其概念非常容易理解。
    • 细,在不同的业务场景和设计需求下有不同的界定。这要求设计人员具备较强的分析设计能力和相关的重构经验,才能准确地发现类的多重职责并将其分离。如果分离得过细,可能会导致类的数量剧增,反而增加了系统的复杂性。就是在于“职责”的划分并没有一个绝对的标准。一个“职责”的粒度是粗
3. 实例:登录功能重构

在这里插入图片描述

在这里插入图片描述

图片描述:重构后的UML类图。MainClass 依赖 LoginFormLoginForm 依赖 UserDAOUserDAO 依赖 DBUtil。这四个类各司其职。

http://www.jsqmd.com/news/49754/

相关文章:

  • 102302124_严涛_作业3
  • CF1799G Count Voting 笔记
  • 2025年11月美国本科申请机构深度测评:藤校Offer领航者全解析
  • 20251124 - 月度检测 总结
  • 2026美国硕士留学中介推荐:从背景提升到签证获批全程护航!
  • 踩坑日记20251124
  • 2025年度楼梯厂商推荐榜单与选择指南:一份基于行业专业数据的权威分析报告,整木/实木/原木等材质楼梯十大主流供应商解析
  • Consciousness Preservation and Synthetic Life
  • 详细介绍:Nginx 高效动静分离:从原理到实战
  • C++语法基础
  • 2025美国留学中介实测榜单:从藤校到小众专业,核心竞争力深度对比!
  • MySQL 数据备份 - 教程
  • 复制 deepseek think 思考 内容 的方法
  • 狂神说Java(基础版)
  • 2025优质留学中介全景推荐:从藤校OFFER到职业落地,谁是你的专属引路人?
  • 第一章语法基础__C++
  • 11月 月度检测 总结
  • zhengrui 喵了个喵
  • C#.NET PeriodicTimer 深入解析:高效异步定时器的正确打开方式 - 详解
  • 2025.11.24
  • Scrum冲刺阶段 Day One
  • 2025年11月留学机构实测:5家实力留学机构推荐,细分领域王牌都在这!
  • 兄弟们关于mysql的看法你们怎么看
  • ASP.NET Core Blazor简介和飞快入门三(布局和路由)
  • 11/24
  • zhengrui 种花
  • 俄罗斯黑客承认协助阎罗王勒索软件入侵企业网络
  • 2025年11月口碑好的钢骨架聚乙烯塑料复合管厂家推荐排行榜哪家好
  • [ImGui游戏设置UI模拟实践] ImGui Learn Data Day 2
  • 深入解析:java设计模式七、代理模式