设计模式7大原则

开闭原则

对扩展开放(对于提供方来说),对修改关闭(对于使用方来说)。

其含义是说一个软件实体应该通过扩展来实现变化,而不是通过修改已有的代码来实现变化。

里氏替换原则

https://blog.csdn.net/zhengzhb/article/details/7281833

里氏替换原则通俗的来讲就是:

任何父类出现的地方,子类一定可以出现替换。

子类可以扩展父类的功能,但不能改变父类原有的功能。

引用对象尽量使用接口或抽象类,而不是实现类,这主要是实现里氏替换原则的一个要求。

它包含以下4层含义:

  • 子类可以实现父类的抽象方法,但不能覆盖父类的非抽象方法。

  • 子类中可以增加自己特有的方法。

  • 当子类的方法重载父类的方法时,方法的前置条件(即方法的形参)要比父类方法的输入参数更宽松。

  • 当子类的方法实现父类的抽象方法时,方法的后置条件(即方法的返回值)要比父类更严格。

依赖倒置原则

先把需要的依赖抽象出来,然后再去根据抽象的依赖去实现细节。

面向接口编程,不要面向实现编程。

单一职责原则

一个类只负责一个功能领域中的相应职责。

接口隔离原则

使用多个专门的接口,而不使用单一的总接口。

简而言之:客户端不应该依赖它不需要的接口;类间的依赖关系应该建立在最小的接口上。

迪米特法则

  • 迪米特法则又叫做最少知道原则,就是说一个对象应当对其它对象有尽可能少的了解,不要和陌生人说话。

  • 强调只和朋友说话,不和陌生人说话。这里的朋友指的是:出现在成员变量,方法输入,输出参数中的类称为成员朋友类,而出现在方法体内部的类不属于朋友类。

  • 迪米特法则初衷在于降低类之间的耦合。由于每个类尽量减少对其它类的依赖,因此。很容易使得系统的功能模块独立,相互之间不存在(或很少有)依赖关系。

合成复用原则

尽量使用对象组合,而不是继承来达到复用的目的。

继承的缺点:

1.继承复用破坏了类的封装性。

2.子类与父类的耦合度高。

3.它限制了复用的灵活性。

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

推荐阅读更多精彩内容

  • 开闭原则(Open-Closed Principle, OCP) ​ 面向抽象的一个设计原则,指一个实...
    A再也没有阅读 1,755评论 0 1
  • 类 类是指具有相同属性、方法和关系的对象的抽象,它封装了数据和行为,是面向对象程序设计(OOP)的基础,具有封装性...
    RealZeal阅读 3,446评论 0 0
  • 一、创建型模式1、抽象工厂模式(Abstract factory pattern): 提供一个接口, 用于创建相关...
    佘大将军阅读 4,233评论 0 0
  • 总览 设计模式的7大原则核心思想就是: 对接口编程,而不是对实现编程 优先使用对象组合,而不是继承其实能理解上面的...
    辅助膑阅读 1,527评论 0 0
  • 单一职责原则 接口以及类编写时应该按照功能来划分,避免将不同功能全聚合在同一个类或者接口中,使得他们功能定义模糊,...
    那就省略号吧阅读 3,596评论 0 0