大话设计模式读书笔记(三) 单一职责原则和开放-封闭原则和依赖倒转原则
来源:互联网 发布:网民网络应用 编辑:程序博客网 时间:2024/06/02 22:20
大多数时候,一件产品简单一些,职责单一一些。或许是更好的选择
单一职责原则:
就一个类而言,应该有且仅有一个引起它变化的原因。
如果一个类承担的职责过多,就等于把这些职责耦合在一起,一个职责的变化可能会削弱或抑制这个类完成其他职责的能力。这种耦合会导致脆弱的设计,当变化发生时,设计会遭到意想不到的破坏。
如果你能想到多于一个的动机去改变这一个类,那么这个类就有多于一个的职责,就应该考虑类的职责分离。
开放封闭原则:
是说软件实体(类、模块、函数等等)应该可以扩展,但不可以修改。对于扩展是开放的,对于更改是封闭的。关键是抽象,将一个功能的通用部分和实现细节部分清晰的分离开来。
无论模块是多么封闭,都会存在一些无法对之封闭的变化。既然不可能完全封闭,设计人员必须对他设计的模块应该对那种变化封闭进行选择。他必须猜测出最有可能发生的变化种类,然后构造抽象来隔离这些变化。
开放封闭原则是面向对象设计的核心所在,遵循这个原则可以带来面向对象技术所声称的巨大好处。也就是可维护,可扩展,可复用,灵活性好。开发人员应该仅对程序中呈现出频繁变化的那些部分作出抽象。然而,对于应用程序的每一个部分都刻意地进行抽象同样不是一个好主意。拒绝不成熟的抽象和抽象本身一样重要。
依赖倒转原则:
1、高层模块不应该依赖低层模块。两个都应该依赖抽象。
2、抽象不应该依赖细节,细节应该依赖抽象。
依赖倒转原则其实是面向对象设计的标志,用那种语言来编写程序不重要,如果编写时考虑的是如何针对抽象变成而不是针对细节变成,即程序所有的依赖关系都终止于抽象类或接口,那就是面向对象的设计,反之则是面向过程的设计。
0 0
- 大话设计模式读书笔记(三) 单一职责原则和开放-封闭原则和依赖倒转原则
- 大话设计模式之单一职责原则 开放封闭原则 依赖倒转
- 单一职责原则+开放-封闭原则+依赖倒转原则+里氏代换原则【设计模式】【学习总结】
- 设计模式之单一职责原则、开发-封闭原则和依赖倒转原则
- 设计模式--工厂模式.策略模式.单一职责原则.开放封闭原则.依赖倒转原则
- 设计模式之单一职责原则、开放封闭原则、依赖倒转原则
- 【设计模式】单一职责原则、开放封闭原则、依赖倒转原则
- 设计模式--单一职责原则,开放封闭原则,依赖倒转原则
- 大话设计模式之四:1~5章(简单工厂模式 、策略模式、单一职责原则、开放封闭原则 、依赖倒转原则)
- 大话设计模式学习笔记(3,4,5)----单一职责,开放-封闭,依赖倒转,里氏代换原则
- 单一职责原则-和-开放-封闭原则-和-依赖倒转原则
- 【设计模式】三、单一职责原则,开发-封闭原则,依赖倒转原则
- 大话设计模式-单一职责原则 /封闭开放原则
- 【有毒的设计模式】单一指责原则、开放-封闭原则、依赖倒转原则、里氏代换原则
- 大话设计模式笔记(三)——单一、开放封闭、依赖倒转、里氏替换四大设计原则
- 设计模式六大原则-单一职责原则、开放封闭原则、依赖倒转原则、里氏代换原则、迪米特法则、合成/聚合复用原则
- 设计模式 --3.单一职责原则,4.开发-封闭原则,5依赖倒转原则
- 读书笔记--单一职责原则、开放-封闭原则
- Spring Mvc 原理图
- 在O(1)时间复杂度删除链表节点
- js实现表格排序
- 蓝桥杯 基础练习 十六进制转八进制
- hdu1079 找规律/博弈
- 大话设计模式读书笔记(三) 单一职责原则和开放-封闭原则和依赖倒转原则
- 61. Rotate List
- poj 3692 二分图匹配
- (一)微信小程序开发配置
- 排列组合
- 广工ProblemH 1231 TMK买礼物(判定数组)
- MyISAM和InnoDB索引引擎的B+树索引实现
- MFC中字符之间转换
- 关于SPI的一点总结