zoukankan      html  css  js  c++  java
  • 小菜学设计模式 单一职责原则

    单一职责原则:就一个类而言,应该仅有一个引起它变化的原因!
    如果一个类承担的职责过多,就等于把这些职责耦合在一起,一个职责的变化可能会削弱或者抑制这个类完成其他职责的能力。
    这种耦合会导致脆弱的设计,当变化发生时,设计会遭受意想不到的破坏!

    单一职责原则,其核心的思想是:

    一个类,最好只做一件事,只有一个引起它变化的原因。

    一个优良的系统设计,强调模块间保持低耦合、高内聚的关系,在面向对象设计中这条规则同样适用,所以面向对象的第一个设计原则就是:单一职责原则(SRP,Single Responsibility Principle)。

    单一职责,强调的是职责的分离,在某种程度上对职责的理解,构成了不同类之间耦合关系的设计关键,因此单一职责原则或多或少成为设计过程中一个必须考虑的基础性原则。

     

    单一职责原则可以看作是低耦合、高内聚在面向对象原则上的引申,将职责定义为引起变化的原因,以提高内聚性来减少引起变化的原因。职责过多,可能引起它变化的原因就越多,这将导致职责依赖,相互之间就产生影响,从而极大的损伤其内聚性和耦合度。单一职责,通常意味着单一的功能,因此不要为类实现过多的功能点,以保证实体只有一个引起它变化的原因。

     

    关于单一职责原则,建议是:

    1. 一个类只有一个引起它变化的原因,否则就应当考虑重构。
    2. SRP由引起变化的原因决定,而不由功能职责决定。虽然职责常常是引起变化的轴线,但是有时却未必,应该审时度势。
    3. 测试驱动开发,有助于实现合理分离功能的设计。
    4. 可以通过Façade模式或Proxy模式进行职责分离。

                                  二〇〇九年十一月五日

  • 相关阅读:
    Macaca拓展自己控件的方法
    pyparsing:定制自己的解析器
    利用 Traceview 精准定位启动时间测试的异常方法 (工具开源)
    Jenkins插件开发
    一个简陋的高并发请求脚本的演进过程
    python 自定义回调函数
    默认端口
    基本数据类型封装类比较
    grep命令和tail命令
    idea 拉取git新分支
  • 原文地址:https://www.cnblogs.com/dupeng0811/p/1596770.html
Copyright © 2011-2022 走看看