`
shaorongjie
  • 浏览: 366 次
  • 性别: Icon_minigender_1
  • 来自: 西安
社区版块
存档分类
最新评论

单一职责原则

阅读更多

      写一下最近看《敏捷软件开发:模式、原则与实践》的一点体会。

      软件设计中有个重要的概率,就是软件的内聚性,Martin在书中将内聚性和引起一个模块或者类改变的作用力联系起来。

      单一职责原则:就一个类来说,应该仅有一个引起它变化的原因。

      如果一个类拥有多个职责,就应该把每个职责分到单独的类中。因为每一个职责都是变化的轴线。当需求变化时,该变化会反映为类的职责的变化。如果一个类承担了多于一个的职责,那么引起它变化的原因就有多个。

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

      看到这个我想起了,Android在后面将dialog的管理从Activity从分离出来,用DialogFragment去实现就是这个道理。

还有就是Android中将ManagerQuery中管理Cursor的部分从Activity中分离出来,形成了CursorLoader这个类,也是单一职责原则的具体应用。

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics