zoukankan      html  css  js  c++  java
  • 大话设计模式读书笔记(单一职责原则)

    人物:大鸟,小菜

    事件:小菜夸赞自己手机集多功能于一机,这时飞来一个UFO,大鸟让小菜赶紧录下来,小菜录下之后才发现,拍摄的UFO模糊得只是一个白点,就这一事件引发思考


     思考:虽然手机集多功能于一机,但是拍摄功能却比不上专业相机,大多数时候,一件产品简单一些,职责单一一些,或许是更好的选择

    单一职责原则

    1.概念(理解):

        就一个类而言,应该仅有一个类引起它变化的原因。

    2.举例:

        在俄罗斯方块游戏中,方块的下落,旋转,碰撞判断,移动,堆积这些游戏逻辑,和界面如何表示是没有关系的,所以这些逻辑应该和界面表示分开,不应该写在一个类里。

    3.用单一职责原则的必要性:

        如果一个类承担的职责过多,就等于把这些职责耦合在一起,一个职责的变化可能会削弱或者抑制这个类完成其他职责的能力,这种耦合会导致脆弱的设计,当变化发生时,设计会受到意想不到的破坏。

    4.小结:

        这里可以发现,软件设计真正要做的许多内容,就是发现职责并把职责互相分离。判断是否要分离出类来,就看是否能够想到多余一个动机去改变一个类,如果有想到那么就意味着这个类多一个职责,就应该分离出来,俄罗斯方块的界面是容易变化的,游戏的逻辑是很少变化的,分离出来有利于界面的改动。

  • 相关阅读:
    Bridge Design Pattern
    终于写了个自己的简单MVC框架!
    c 第1章的习题 列表 ! :)
    如何创建 linux 下的计划任务运行 php 文件?
    c 的开篇(自学 c 语言)
    一连串问题,都和.net framework有关
    信号与信号量的区别[转]
    永久设置SecureCRT的背景色和文字颜色方案[转]
    do...while(0)的妙用 【转】
    给Ubuntu软件升级命令 [转]
  • 原文地址:https://www.cnblogs.com/wencheng9012/p/13368242.html
Copyright © 2011-2022 走看看