设计模式基础--设计原则

principium.jpg

单一职责原则 SPR

定义:应该有且仅有一个原因引起类的变更
there should never be more than one reason for a class to change
使用好处

  1. 类的复杂性降低,实现什么职责都有清晰明确的定义
  2. 可读性提高
  3. 可维护性高
  4. 变更引起的风险降低,变更是必不可少的,但是如果单一职责用的好,修改接口对其他接口无影响,这对系统的扩展维护是有很大好处的。

里氏替换原则

定义:只要父类出现的地方,子类就可以出现,而且替换为子类不会产生任何错误异常,使用者根本不需要知道使用的是子类还是父类,但是返回来就行不行了,子类出现的地方如果冒然替换为父类未必就能适应。

规则:子类必须完全实现父类的方法
总结一句话 —— 就是尽量不要从可实例化的父类中继承,而是要使用基于抽象类和接口的继承。

依赖倒置原则

定义:

  • 高层模块不应该依赖于底层模块,两者都应该依赖于其抽象;
  • 抽象不应该依赖于实现类
  • 实现类依赖接口或抽象类

接口隔离原则

接口方法数量要少,尽量使用多个专门的接口

迪米特法则

最少知识原则,一个对象应该对其他对象有最少的了解。我只知道你的public方法就ok了其他的我一概不管

开闭原则

对外扩展开放,修改关闭,你随便扩展,但是不可以修改。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 目录: 设计模式六大原则(1):单一职责原则 设计模式六大原则(2):里氏替换原则 设计模式六大原则(3):依赖倒...
    加油小杜阅读 4,028评论 0 1
  • 设计模式六大原则 设计模式六大原则(1):单一职责原则 定义:不要存在多于一个导致类变更的原因。通俗的说,即一个类...
    viva158阅读 4,125评论 0 1
  • 转载标注声明:http://www.uml.org.cn/sjms/201211023.asp 目录:[设计模式六...
    Bloo_m阅读 4,044评论 0 7
  • 设计模式六大原则(1):单一职责原则 定义:不要存在多于一个导致类变更的原因。通俗的说,即一个类只负责一项职责。 ...
    Jabir_Zhang阅读 3,808评论 0 3
  • 做后台产品的时候,为了避免设计地凌乱,想了解一些系统设计模式思想,于是找高内聚低耦合相关的文章。这篇文章是摘自网友...
    徐薇薇阅读 6,568评论 0 0