
设计模式
驴三骑
一点浩然气,千里快哉风
展开
-
设计原则-接口隔离原则
文章目录接口隔离原则 接口隔离原则 一个类对另一个类的依赖应该建立在最小的接口上。 接口隔离原则和单一职责都是为了提高类的内聚性、降低它们之间的耦合性,体现了封装的思想,但两者是不同的: 单一职责原则注重的是职责,而接口隔离原则注重的是对接口依赖的隔离。 单一职责原则主要是约束类,它针对的是程序中的实现和细节;接口隔离原则主要约束接口,主要针对抽象和程序整体框架的构建。 接口隔离原则的优点: 接口隔离原则是为了约束接口、降低类对接口的依赖性,遵循接口隔离原则有以下 5 个优点。 将臃肿庞大的接口分解为原创 2021-03-04 21:55:55 · 226 阅读 · 1 评论 -
设计原则-依赖倒置原则
文章目录依赖倒置原则 依赖倒置原则 在面向对象编程领域中,依赖倒置原则(Dependency inversion principle,DIP)是指一种特定的解耦(传统的依赖关系创建在高层次上,而具体的策略设置则应用在低层次的模块上)形式,使得高层次的模块不依赖于低层次的模块的实现细节,依赖关系被颠倒(反转),从而使得低层次模块依赖于高层次模块的需求抽象。 该原则规定: 高层次的模块不应该依赖于低层次的模块,两者都应该依赖于抽象接口。 抽象接口不应该依赖于具体实现。而具体实现则应该依赖于抽象接口。 通过原创 2021-03-03 22:57:01 · 213 阅读 · 1 评论 -
设计原则-里氏替换原则
文章目录里氏替换原则 里氏替换原则 可以解读为:派生类(子类)对象可以在程序中代替其基类(超类)对象。 子类可以扩展父类的功能,但不能改变父类原有的功能。 里氏替换原则对继承进行了规则上的约束,这种约束主要体现在四个方面: 子类可以实现父类的抽象方法,但不能重写父类的非抽象方法。 子类中可以增加自己特有的方法。 当子类的方法重载父类的方法时,方法的前置条件(即方法的输入/入参)要比父类 方法的输入参数更宽松。如父类方法的入参是HashMap那么子类重载方法的入参因该是Map。 当子类实现父类的抽象方法时,原创 2021-03-03 22:19:47 · 249 阅读 · 1 评论 -
设计原则-单一职责原则
文章目录单一职责原则 单一职责原则 sd **在面向对象编程领域中, 单一职责原则(Single responsibility principle)规定每个类都应该有一个单一的功能,并且该功能应该由这个类完全封装起来。**所有它的(这个类的)服务都应该严密的和该功能平行(功能平行,意味着没有依赖)。 一个类或者模块应该有且只有一个改变的原因。一个具体的例子就是,想象有一个用于编辑和打印报表的模块。这样的一个模块存在两个改变的原因。第一,报表的内容可以改变(编辑)。第二,报表的格式可以改变(打印)。这两方面会原创 2021-03-03 15:21:02 · 160 阅读 · 0 评论 -
设计原则-开闭原则
文章目录开闭原则(Open-Closed Principle,OCP)梅耶开闭原则多态开闭原则 开闭原则(Open-Closed Principle,OCP) 在面向对象编程领域中,开闭原则规定“软件中的对象(类,模块,函数等等)应该对于扩展是开放的,但是对于修改是封闭的”,这意味着一个实体是允许在不改变它的源代码的前提下变更它的行为。该特性在产品化的环境中是特别有价值的,在这种环境中,改变源代码需要代码审查,单元测试以及诸如此类的用以确保产品使用品质的过程。遵循这种原则的代码在扩展时并不发生改变,因此无需原创 2021-03-02 00:57:06 · 107 阅读 · 0 评论 -
设计模式-单例模式
文章目录单例模式简介实现思路实现方式懒汉式,方法上加synchronized 的方式双检锁/双重校验锁(DCL,即 double-checked locking)枚举饿汉式破坏单例模式的方法及解决办法 单例模式 简介 单例模式(Singleton Pattern)也叫单子模式,是一种常用的软件设计模式,属于创建型模式的一种。在应用这个模式时,单例对象的类必须保证只有一个实例存在。 实现思路 一个类能返回对象一个引用(永远是同一个)和一个获得该实例的方法(必须是静态方法,通常使用getInstance这个名原创 2020-08-21 00:03:02 · 128 阅读 · 0 评论