设计模式 一、软件设计原则

一、理解设计原则

1、单一原则

1.1 如何理解单一职责原则(SRP)

单一职责原则(Single Responsibility Principle,简称SRP),他要求一个类或模块应该只负责一个特定的功能,这有助于降低类之间的耦合度,提高代码的可读性和可维护性。

单一职责原则的定义非常简单,一个类只负责完成一个职责或者功能,也就是说,不要设计大而全的类,要设计粒度小、功能单一的类,换个角度来讲,就是一个类包含了两个或者以上业务不相干的功能,那我们就说它职责不够单一,应该将它拆分成多个功能更加单一,粒度更细的类。

1.2 如何判断类的职责是否单一

大部分情况下,类里的方法是归为同一类功能,还是归为不相关的两类功能,并不是那么容易判定的,在真实的软件开发中,对于一个类是否自责单一的判定,是很难拿捏的。不同的应用场景、不同阶段的需求背景下,对同一个类的职责是否单一的判定,可能都是不一样的。所以我们可以先写一个粗粒度的类,满足业务需求,随着业务的发展,如果粗粒度的类越来越大,代码越来越多,这个时候我们就可以将这个粗粒度的类,拆分成几个更细粒度的类,这就是所谓的持续重构。

相关推荐
葬送的代码人生12 小时前
别再让 AI 瞎写代码了!Vibe Coding 三步法教你写出靠谱代码
前端·设计模式·架构
无风听海15 小时前
Claude Agent Skills 的四种设计模式;从渐进式披露到最小权限
java·算法·设计模式
富贵冼中求16 小时前
从单向流到双向 RPC:Agent 通信协议的范式分叉与 ACP 协议实战拆解
设计模式·架构
电子科技圈19 小时前
先进封装、芯粒架构和3D集成——先进异构集成亟需兼具标准化与定制化能力的互联及总线IP解决方案
tcp/ip·设计模式·架构·软件构建·代码规范·设计规范
zjun100121 小时前
C++:2.工厂模式
设计模式
触底反弹1 天前
🤯 面试被问 AI Workflow 和 Agent 有啥区别?3 张图 + 2 段代码讲清楚!
人工智能·设计模式·面试
杨充2 天前
10.可测试性实战设计
设计模式·开源·代码规范
杨充2 天前
9.重构十二式的实战
设计模式·开源·代码规范
杨充2 天前
6.设计原则的全景图
设计模式·开源·全栈
杨充2 天前
2.面向对象的特性
设计模式