6大设计原则

Posted kisslight

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了6大设计原则相关的知识,希望对你有一定的参考价值。

单一职责原则 Single Responsibility Principle

  • 备受争议的原则,原因在于对职责的定义以及职责的划分
  • 适用于接口,类,方法
  • 定义:There should never be more than one reason for a class to change 应该有且仅有一个原因引起类的变更
  • 有点:类的负责性降低,可读性提高,可维护性提高,变更引起的风险降低
  • 事例:电话接口有3个方法,dial()和hangup()两个是协议管理,负责拨号和挂机。chat()实现是数据传递。协议管理的变化和数据传递的变化都会引起接口的变化,违背了SRP只能有一个原因引起类变化。需要把dial,hangup置于一个接口,chat另一个接口。
    技术分享图片
  • 建议:接口一定要做到单一职责,类的设计尽量做到只有一个原因引起变化。即使是经验丰富的开发人员也很难保证自己设计的类都满足SRP,“This is sometimes hard to see”。

以上是关于6大设计原则的主要内容,如果未能解决你的问题,请参考以下文章

设计模式6大设计原则解读——依赖倒置原则

设计模式之6大设计原则

3张思维导图说清楚:java设计模式的6大设计原则,前3讲!

设计模式之_6大设计原则(转)

设计模式一 6大设计原则

6大设计原则之单一职责原则