单一职责(SRP)
单一职责(Single Responsibility Principle)
一个类只负责一个模块或者一个功能
其中类是否单一职责很多时候都是跟业务有关系的,比如
public class UserInfo {
private long userId;
private String username;
private String email;
private String telephone;
private long createTime;
private long lastLoginTime;
private String avatarUrl;
private String provinceOfAddress; // 省
private String cityOfAddress; // 市
private String regionOfAddress; // 区
private String detailedAddress; // 详细地址
// ...省略其他属性和方法...
}
这个UserInfo,属性很多,如果只是用于个人信息,展示业务,他是单一的,
但是如果后面有,登录,注册,需要使用username,email,什么的,就要将这个类进行拆分。
如何判断一个类是否需要拆分
1.代码过多,属性过多,影响可读性
2.私有方法过多,可以考虑提出来复用
3.很难取名字,名字很模糊,可能就是类的职责不清晰
4.类里面大量方法的调用比较集中在几个属性,可以对这几个属性进行拆分
5.依赖类过多,不符合高内聚,低耦合,需要拆分一下
评论区