天天看点

面向对象设计的六大原则之单一职责原则面向对象设计的六大原则之单一职责原则

面向对象设计的六大原则之单一职责原则

单一职责原则(Single Responsibility Principle):一个类中应该是一组关联性很高的函数以及数据的封装。

  • 职责的定义
  • 如何划分类的职责

职责的定义

职责的定义还有先从单一说起走,单一中的一像是一个也像是一类,对于一个方法来说那么这个方法所实现的功能也是只有一个,这也是单一。而在类的职责中说单一,又回到职责的理解中。

职责,是指任职者为履行一定的组织职能或完成工作使命,所负责的范围和承担的一系列工作任务,以及完成这些工作任务所需承担的相应责任。加上单一原则,从字面意思理解是一个类具有单一的职能职责。

如何划分类的职责

如何去划分类的职责,以笔者的开发经验以及对设计模式的理解,实质上并不能很清晰的安照一定的条条框框去构建,而在实际的开发中,我们还有根据具体的项目,具体的数据封装性来划分,简而言之,在某种程度上,对于一个类的理解要具有单一职责原则,这也是相对的,对于具体细分下去,在某种层面上,可能在对于一个类的划分上就不是单一原则,而如何上升到另外一个层面上,这又可能是单一职责原则,具体的还是得根据开发人员的经验去合理的判断。设计原则并没有绝对的原则,只是相对的去对代码进行抽象和封装,让代码的可维护性、可阅读性更高,耦合性更低。