ios设计原则-单一责任原则

533 阅读2分钟

单一原则讲解

  • 一个类只允许有一个职责,即只有一个导致该类变更的原因。

解读

  • 类的职责的变化往往就是导致类变化的原因,就是说加入一个类具有多种职责,那么导致这个类变化的原因也会变多,从而导致这个类的维护变得困难。
  • 在日常开发中随着业务的扩张和需求的不断增加,可能会给原来的类增加一些本来不属于他的一些职责,从而违反了单一责任原则。如果我们发现当前类的职责不仅仅只有一个,就应该将本来部署与该类的真正职责分离出来。
  • 不仅仅是类,就还有方法也是要遵守单一原则。也就是一个方法只做一件事情。而不是说一个方法中有不同任务,而是需要将不同的任务分别让各自的函数(方法)去完成。

优点

  • 由于类和方法的职责都被划分的很清晰,虽然可能类和函数(方法)的数量会变多,但是这样做可以提高代码的可读性,也能降低程序出错的风险,因为清晰的代码可以可快的找到出错的地方,修改后也不会影响其他的功能,降低了代码维护的成本。

类比->程序员创业

  • 1个(全栈)程序员要开始创业,他本来的职责就是写出需要的程序完成产品。开始学习其他的技能。
  • 接项目、找投资、运营自己的项目。

创业者1 未使用单一责任原则

16197656935958.jpg

@property(nonatomic,strong)NSString *name;
@property(nonatomic,assign)int age;

//编程的能力
- (void)programma;
//接业务
- (void)getProgect;
//算钱
- (void)calculateMoney;

创业者2 使用单一责任原则

16197659649003.jpg

  • 开发

    @property(nonatomic,strong)NSString *name;
    @property(nonatomic,assign)int age;
        
    //编程的能力
    - (void)programma;
        
    
  • 计算盈利

    @interface Caculater : NSObject
    //算钱
    - (void)calculateMoney;
    
  • 接业务

    @interface Projecter : NSObject
    //接业务
    - (void)getProject;
    
    

实践

  • 在实际开发中要注意将不同职责分开,这样才有利与我开发。