定义:不要存在多于一个导致类变更的原因,通俗的说,即一个类只负责一项职责 问题由来:类T负责两个不同的职责:职责1,职责2.当由于职责1需求发生改变而需要改变类T时,有可能会导致原本运行正常的职责P功能发生故障; 解决方案:遵循单一职责原则,分别建立两个类T1、T2,使T1完成职责P1功能,T2完成职责P2功能。当修改类T1时,不会使职责P2发生故障风险;同理,当T2修改时,也不会时职责P1发生故障风险 说到单一职责原则,很多人都会很不屑一顾,因为他太简单了,稍有经验的程序员即使从来没有读过设计模式,从来没有听说过单一职责原则,在设计软件时也会自觉的遵守这一重要原则,因为这是常识。在软件编程中,谁也不希望因为修改一个功能导致其它的功能发生故障。而避免出现这一问题的方法便是遵循单一职责的原则。虽然单一职责原则如此简单,并且被认为是常识,但是即便是经验丰富的程序员写出的程序,也会有违背这一原则的代码存在。为什么会出现这种现象昵?因为有职责扩散,所谓职责扩散,就是因为某种原因,职责P被分化为粒度更细的职责P1和P2; 单一职责的优点:1,可以降低类的复杂度,一个类只负责一项职责,期逻辑肯定要比负责多项职责简单的多;2.提高类的可读性,提高系统的可维护性;3.变更引起的风险降低,变更是必然的,如果单一职责原则遵守的好,当修改一个功能时,可以显著降低对其它功能的影响;
设计模式六大原则----》单一职责原则
关注
打赏