摘要:一、什么是观察者设计模式 先来看一下下面的定义: 观察者模式(Observe Pattern)定义对象之间的一对多依赖关系,使得每当一个对象状态发生改变时,其相关依赖对象皆得到通知并被自动更新。 自己的理解: 除了上面描述的定义,观察者设计模式还可以用于一个流程的数据获取,或者一系列数据的校验,下面
阅读全文
摘要:一、什么是责任链设计模式 责任链设计模式(Chain of Responsibitity)为了避免请求的发送者和接收者之间的耦合关系,使多个对象都有机会处理请求。将这些对象连成一条链,并沿着这条链传递该请求,直到有一个对象处理它为止。 发出请求的客户端并不知道最终是哪个对象处理了这个请求,这样系统内
阅读全文
摘要:一、什么是策略设计模式 策略设计模式(Strategy Pattern)定义了一系列的算法,并将每一个算法封装起来,而且使它们之间可以互相替换。策略模式让算法的变化不会影响到使用算法的客户。 分析下定义,策略模式定义和封装了一系列的算法,它们是可以相互替换的,也就是说它们具有共性,而它们的共性就体现
阅读全文
摘要:一、什么是装饰器设计模式 装饰器模式(Decorator Pattern),是在不必改变原类文件和使用继承的情况下,动态的扩展一个对象的功能。它是通过创建一个包装对象,也就是装饰来包裹真实的对象。 使用装饰器模式的时候需要注意一下几点内容: 装饰对象和真实对象有相同的接口。这样客户端对象就可以以和真
阅读全文
摘要:一、什么是代理设计模式 所谓代理,用生活中的事务来做解释的话可以理解为中介,比如:买房、租房,我们都可以找中介,可以省去很多的时间和麻烦。 在程序编码中的代理,就是用一个代理类将目标类封装起来,我们通过调用代理类中的方法,就可以执行目标类当中的方法,同时,我们在代理类中的方法还能增加一些额外的功能,
阅读全文
摘要:一、什么是建造者(Builder)设计模式 将一个复杂对象的构建过程和它的表示分离,使得同样的构建过程可以创建不同的表示。 建造者模式可以将一个产品的内部表象和产品的生成过程分割开来,从而使一个建造过程生成具有不同的内部表象的产品对象。 如果我们使用了建造者模式,那么用户只需要指定需要建造的类型就可
阅读全文
摘要:一、简单工厂模式 简单工厂模式就是由一个工厂对象来决定创建出哪一种类的实例。简单工厂模式是工厂模式家族中最简单实用的模式,先看下面这个图: 可以看出,上面总共有三种类,一个简单工厂类,一个产品类(或接口)和三个具体的产品衍生类(子类)。其中,工厂类负责整个创建产品衍生的逻辑判断,所以为了使工厂类知道
阅读全文
摘要:一、什么是模板方法模式 定义一个操作中的算法骨架,将一些步骤的具体实现延迟到子类当中去实现。模板方法模式使得子类可以不改变一个算法的结构即可重定义该算法的某些特定的步骤。 二、模板方法模式的使用场景 在多个子类中拥有相同的方法,而且逻辑相同时,可以将这些方法抽出来放到一个模板抽象类中。 程序主框架相
阅读全文
摘要:一、什么是单例模式 单例模式(singleton),保证一个类仅有一个实例,并提供一个访问它的全局访问点。 二、单例模式的使用场景 应用程序日志 应用程序的日志应用,一般都何用单例模式实现,这一般是由于共享的日志文件一直处于打开状态,因为只能有一个实例去操作,否则内容不好追加。 Web应用的配置文件
阅读全文