Single Responsibility principle (SRP): In the case of a class, there should be only one cause for it to change.
If a class takes on too much responsibility, it is tantamount to coupling these responsibilities, and a change in responsibility may be less likely to inhibit the ability of the class to perform other duties. This coupling is a fragile design, and when changed, the design can cause unexpected damage.
Software design really has to do a lot of things, is to discover responsibilities, and to separate those responsibilities from each other. It is not difficult to judge whether a class should be separated or not, that is, if you can think of more than one motive to change a class, then this class has a redundant duty and should consider the separation of duties of the class.
When we design the class, we should think more about the separation of classes, do a single duty, so that your code is really easy to maintain, easy to expand, easy to reuse, flexible and diverse.
Single duty mode