设计模式
文章平均质量分 79
PopCandier
我很懒,不是很想写,但是...赞美太阳
展开
-
设计原则-单一职责原则与接口分离原则
单一职责原则 (Simple Responsibility Pinciple,SRP)这个原则其实很有意思,他规定每个类所拥有的能力必须明确划分,吃饭就吃饭,洗澡就洗澡,睡觉就睡觉,这保证了每个类的相互的能力不会互相污染,你不能一个吃饭的类居然可以点出来洗澡的方法,这听起来就很荒谬。如果你在学习的时候乐于查看源码,不难会有这样疑问:为什么我们看起来明明可以一步完成的操作他要写那么多封装类还有那...原创 2019-03-29 19:08:14 · 849 阅读 · 0 评论 -
设计原则-迪米特原则与合成复用原则
迪米特原则(Law of Demeter LoD)迪米特原则又叫最少知道原则(Least Knowledge Principle,LKP),这里的最少知道主要是强调,调用者对传入的参数,和接受到的返回的参数很熟悉即可,不需要知道在调用过程中涉及了哪些框架设计者自己的类。例如你使用某个JSON框架,你传入的是可能是一个对象,最多再传入了一个Class类型就可以很方便的调用这个框架的方法,接受到了...原创 2019-03-29 23:52:00 · 381 阅读 · 0 评论 -
设计原则-里氏替换原则
里氏替换原则(Liskov Substitution Principle,LSP)里氏替换原则是我认为其他几个设计原则中比较难以掌握一种,首先他的定义十分晦涩。假如存在,一个类型T,和已经被实例的对象O还存在,另一个类型T2,和已经被实例的对象O2那么存在以下情况,将所有类型为T的对象O都替换成类型T2的对象O2,程序的行为没发生什么改变。看到这一句话给我的第一个感觉是,这讲的一定是父子...原创 2019-03-30 00:17:34 · 251 阅读 · 0 评论 -
设计模式-单例模式详解
单例模式单例模式的定义在整个程序的生命周期中,有且只有一个这样的实例,并且保证是线程安全的。单例模式的应用场景例如Spring中的ApplicationContext,还有数据库的连接池都属于单例的模式,他们只会存在一个实例。单例模式的几种写法饿汉式单例我们先来看写法public class HungrySingleton{ private final HungrySinglet...原创 2019-04-01 00:30:26 · 192 阅读 · 0 评论 -
设计原则-开闭原则与依赖倒置
设计原则本文章将会介绍我对一些设计原则的理解,包括:开闭原则、里氏替换原则、迪米特法则、单一职责、接口隔离、合成复用,依赖倒置等进行讲解。开闭原则(Open-Closed Principle, OCP)对扩展开放,对修改关闭,这是对开闭原则的基本定义,这个原则存在的意义在于我们需要对一个类的功能进行扩展、增加方法的时候,不用对原本的类进行修改,而是通过继承,去重写,将父类原本方法的行为改造...原创 2019-04-01 08:55:06 · 1333 阅读 · 1 评论