美文网首页
设计模式---设计原则之单一职责

设计模式---设计原则之单一职责

作者: Aspires | 来源:发表于2018-06-26 12:03 被阅读0次

单一职责原则,Single Resposibility Principle,简称SRP,单一职责意指:无论设计接口或者是一个类、一个方法,都应该保持职责单一,例如一个接口:

/*
      维护信息接口
*/
Interface  UserBiz{
      public function Create(){
      }
      public function Update(){
      }
      public function Retrieve(){
      }
      public function Delete(){
      }
}
//既然定义了接口的职责是用户行为(增删改查),就不应该用来显示用户信息
                                    1-1

这就是简单的单一职责原则,它的定义是:有且仅有一个原因引起类的变更。

但是在实际项目中,单一原则很难去严格的执行,因为职责的定义很宽泛。例如那个经典的IPone接口(代码1-2),iPhone接口包含了两种职责,数据传输和协议管理。hang()和dail()实现的是协议管理,chat()实现数据传送。在这里dail()的变化会引起接口的变化,那么chat的变化同样会引起接口的变化,数据传送不仅有chat,还有上网的功能,所以只能进行接口拆分,把数据传送和协议管理分开,但是这样一来,接口或者类的多重加载,大大增加了程序的“重量”,人为的增加了程序的复杂性。

Interface Iphone{
    public function Dail(){
    }//电话接通
    public function hang(){
    }//电话挂起
    public function chat(){
    }
}
                                      1-2

总结:使用单一职责原则的优点:

  • 类的复杂性降低,实现什么职责都有明确的定义
  • 可读性提高,复杂度降低
  • 可维护性提高,更易于维护
  • 变更的风险性降低,对系统的扩展性有很大提升

相关文章

  • 设计模式6原则

    设计模式6原则 参考自csdn:设计模式之六大原则 1 单一职责原则 SRP 单一职责原则(Single Resp...

  • 设计模式之单一职责原则

    设计模式6大设计原则之单一职责原则 单一职则原则(SRP:Single Responsibility Princi...

  • 面向对象编程的设计原则

    设计模式六大原则 单一职责原则 小话设计模式原则之:单一职责原则SRP 一个类,最好只负责一件事。理解单一职责原...

  • 23种设计模式

    摘自《设计模式之禅》(第2版) 设计原则 单一职责原则(Single Responsibility Princip...

  • 设计模式之开闭原则

    相关链接:0. 设计模式之六大原则总结1. 设计模式之单一职责原则2. 设计模式之里式替换原则3. 设计模式之依赖...

  • 设计模式之迪米特法则

    相关链接:0. 设计模式之六大原则总结1. 设计模式之单一职责原则2. 设计模式之里式替换原则3. 设计模式之依赖...

  • 设计模式之依赖倒置原则

    相关链接:0. 设计模式之六大原则总结1. 设计模式之单一职责原则2. 设计模式之里式替换原则3. 设计模式之依赖...

  • 设计模式之接口隔离原则

    相关链接:0. 设计模式之六大原则总结1. 设计模式之单一职责原则2. 设计模式之里式替换原则3. 设计模式之依赖...

  • 设计模式之单一职责原则

    相关链接:0. 设计模式之六大原则总结1. 设计模式之单一职责原则2. 设计模式之里式替换原则3. 设计模式之依赖...

  • 设计模式之里式替换原则

    相关链接:0. 设计模式之六大原则总结1. 设计模式之单一职责原则2. 设计模式之里式替换原则3. 设计模式之依赖...

网友评论

      本文标题:设计模式---设计原则之单一职责

      本文链接:https://www.haomeiwen.com/subject/sgepyftx.html