【设计模式】单一职责原则、开放封闭原则、依赖倒转原则

原创 2016年05月31日 22:39:50

本文内容参考自《大话设计模式》(程杰 著)

1. 单一职责原则(SRP)

就一个类而言,应该仅有一个引起它变化的原因。(反例:游戏逻辑与界面写在一起,则引起变化的原因有2个)

2. 开放-封闭原则(OCP)

软件实体(类,模块,函数等等)应该可以扩展,但是不可修改。

两个特征:对扩展是开放的,对更改是封闭的。
(简单工厂模式就不符合这个原则,而工厂方法模式符合)

3. 依赖倒转原则

A. 高层模块不应该依赖低层模块,两者都应该依赖抽象。
这里写图片描述
B. 抽象不应该依赖细节,细节应该依赖抽象。(即针对接口编程,不要针对实现编程)

为何叫倒转:一般我会把常用代码写成函数库,之后写项目的时候直接调用底层的函数即可,比如访问数据库的代码等等,这叫做高层模块依赖低层模块。但是如果又有新的项目,业务逻辑的高层模块是一样的,不过客户希望用不同的数据库或者存储方式,这个时候由于高层模块依赖于低层的模块,因此无法复用。

里氏代换原则(LSP)

子类型必须能够替换掉它们的父类型。(即,在软件里面,把父类都替换成它的子类,程序的行为没有变化。这样子,才能在不修改父类的情况下进行扩展)

版权声明:本文为博主原创文章,转载请注明出处http://blog.csdn.net/jiange_zh

相关文章推荐

大话设计模式学习笔记(3,4,5)----单一职责,开放-封闭,依赖倒转,里氏代换原则

由于第3,4,5章讲的是设计模式里面的几个原则,没有讲具体的设计模式,所以我这里就把这三章放在一起写了。不过虽然篇幅短但是由于是原则,这些可是非常重要的。原则性的东西一只手都能数的过来,但是想要完全搞...

设计模式中遵循的原则:单一职责、开发-封闭、依赖倒转

单一职责原则 一个类而言,应该仅有一个引起它变化的原因。 如果一个类承担的职责过多,就等于把这些职责耦合在一起,一个职责的变化可能会消弱或者抑制这个类完成其他职责的功能。 软件设计真正要做的许多...

设计模式中遵循的原则:单一职责、开发-封闭、依赖倒转

单一职责原则 一个类而言,应该仅有一个引起它变化的原因。 如果一个类承担的职责过多,就等于把这些职责耦合在一起,一个职责的变化可能会消弱或者抑制这个类完成其他职责的功能。 软件设计真正要做的许多...

单一职责原则+开放-封闭原则+依赖倒转原则+里氏代换原则【设计模式】【学习总结】

面向对象设计中的各种原则: 单一职责原则SRP 开放-封闭原则OCP 依赖倒转原则 里氏代换原则LSP

大话设计模式读书笔记(三) 单一职责原则和开放-封闭原则和依赖倒转原则

大多数时候,一件产品简单一些,职责单一一些。或许是更好的选择 单一职责原则: 就一个类而言,应该有且仅有一个引起它变化的原因。 如果一个类承担的职责过多,就等于把这些职责耦合在一起,一个职责的变化...
  • xsyfl
  • xsyfl
  • 2017-03-31 19:57
  • 99

设计模式六大原则-单一职责原则、开放封闭原则、依赖倒转原则、里氏代换原则、迪米特法则、合成/聚合复用原则

原则,故名思议则是本质的意思。所谓擒贼先擒王,研究设计模式自然要先了解设计原则,所有的模式都是在这些原则的基础之上发展起来的,有的是侧重一个,有的是多个都有所涉及。看完设计模式之后,我感觉到每个模式都...

【有毒的设计模式】单一指责原则、开放-封闭原则、依赖倒转原则、里氏代换原则

单一指责原则、开放-封闭原则、依赖倒转原则、里氏代换原则

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

设计模式之禅-单一职责原则 一 简介 在类的设计中,为了使得类的设计具有更好的可读性,可维护性,通常将这个类设计为只完成唯一的任务(职责),但是这通常是很难实现的,因为有实际的外界因素影响。 二...

《设计模式》杂记之单一职责原则

《设计模式》杂记之单一职责原则 2011-04-13 23:48 by 王祖康, 1615 阅读, 8 评论, 收藏, 编辑 最近买了本设计模式的书,名字叫《设计模式之禅》。这是...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)