马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?立即注册
x
目次
1、定义
2、优点
3、原则的紧张性
4、 示例
5、注意事项
单一职责原则(Single Responsibility Principle, SRP)是面向对象设计中的一项紧张原则,属于 SOLID 原则之一。它的焦点头脑是:一个类应该只有一个引起它变化的缘故原由,换句话说,每个类应该仅有一个职责。
1、定义
每个类应该专注于完成一个功能或职责,避免将多个职责耦合在一起。
2、优点
(1)提高可维护性:职责单一使得类更简洁,修改时风险降低。
(2)加强可读性:更容易理解类的用途和功能。
(3)促进代码复用:独立的职责可被多个类或模块复用。
(4)低耦合:减少类之间的依赖,便于测试和扩展。
3、原则的紧张性
(1)可维护性
当一个类有多个职责时,修改一个职责大概会影响到其他职责。遵循 SRP 可以使得类的修改和维护更简朴,降低出错的概率。
(2)可读性
单一职责的类通常更简洁、更易于理解,使得其他开发者可以快速掌握类的功能。
(3)可测试性
有着单一职责的类更容易进行单位测试,由于测试每个类时,只需关注其单一职责,避免了测试多个功能的复杂性。
(4)低耦合
遵循 SRP 的设计通常会导致低耦合的系统架构,使得系统的组件间依赖关系减少,从而提高系统的机动性。
4、 示例
假设有一个用户类,它同时包罗用户信息和发送电子邮件的功能
- public class User {
- private String name;
- private String email;
- public User(String name, String email) {
- this.name = name;
- this.email = email;
- }
- public void sendEmail(String message) {
- // 发送电子邮件的逻辑
- }
- // 其他用户相关的方法
- }
复制代码 根据单一职责原则,可以将发送邮件的功能抽象到一个单独的类中:
- public class User {
- private String name;
- private String email;
- public User(String name, String email) {
- this.name = name;
- this.email = email;
- }
- // 其他用户相关的方法
- }
- public class EmailService {
- public void sendEmail(User user, String message) {
- // 发送电子邮件的逻辑
- }
- }
复制代码 5、注意事项
(1)应用单一职责原则时,保持合理的类的粒度,不要过度拆分类。
(2)考虑职责的变更频率,如果某些功能很少变更,可以选择将其合并。
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。 |