随笔分类 - 11-设计模式
记录设计模式相关的知识点和实战内容~
摘要:本文内容主要转载于也谈Reactor模式,点击可以查看原文。 什么是Reactor模式 反应器设计模式(Reactor pattern)是一种为处理并发服务请求,并将请求提交到一个或者多个服务处理程序的事件设计模式。当客户端请求抵达后,服务处理程序使用多路分配策略,由一个非阻塞的线程来接收所有的请求
阅读全文
摘要:本系列博客是自己在学习设计模式过程中收集整理的文章集合,其他文章参看设计模式传送门 本文是转载文章,原文请参考此博客 概念 访问者模式表示一个作用于某对象结构中的各元素的操作,它使你可以在不改变各元素类的前提下定义作用于这些元素的新操作。 访问者模式的目的是封装一些施加于某种数据结构元素之上的操作,
阅读全文
摘要:本系列博客是自己在学习设计模式过程中收集整理的文章集合,其他文章参看 "设计模式传送门" 本文是转载文章,原文请参考 "此博客" 概念 责任链模式 (Chain of Responsibility)中包含包含一些命令对象和处理对象。处理对象会通过指针形成链式结构(责任链),命名对象经过 责任链上的处
阅读全文
摘要:概念 观察者模式(又被称为发布 订阅(Publish/Subscribe)模式,属于行为型模式的一种,它定义了一种一对多的依赖关系,让多个观察者对象同时监听某一个主题对象。这个主题对象在状态变化时,会通知所有的观察者对象,使他们能够自动更新自己。 观察者模式结构图 该模式包含四个角色: 抽象被观察者
阅读全文
摘要:本系列博客是自己在学习设计模式过程中收集整理的文章集合,其他文章参看 "设计模式传送门" 本文是转载文章 ,原文请参见 "设计模式(十二)——策略模式" 概念 学习过设计模式的人大概都知道 "Head First设计模式" 这本书,这本书中介绍的第一个模式就是策略模式。把策略模式放在第一个,笔者认为
阅读全文
摘要:本系列博客是自己在学习设计模式过程中收集整理的文章集合,其他文章参看 "设计模式传送门" 本文是转载文章 ,原文请参见 "设计模式——模板方法设计模式" 概念 在一个方法中定义了一个算法的骨架或者步骤,而将一些步骤延迟到子类中去实现。模板方法使得子类可以在不改变算法结构的情况下,重新定义算法中的某一
阅读全文
摘要:外观模式中提供了一个供客户端统一调用的门面(Facade),这个门面屏蔽了下游系统的复杂性,使得客户端对下游系统的调用变得更简单。 外观模式的结构图 以上是门面模式的结构图。 在这个结构图中,出现了两个角色: 门面(Facade)角色 :客户端可以调用这个角色的方法。此角色知晓相关的(一个或者多个)
阅读全文
摘要:平时我们使用的框架中非常频繁地使用了动态代理。可以说如果一个框架不使用动态代理的话,这个框架不太可能做成一个通用的框架。因此动态代理的知识是我们必须要掌握的知识。 本博客是网络转载的,原文请点击这里 代理模式简介 Proxy代理模式是一种结构型设计模式,主要解决的问题是:在直接访问对象时带来的问题。
阅读全文
摘要:装饰器模式(Decorator Pattern)允许向一个现有的对象添加新的功能,同时又不改变其结构。这种类型的设计模式属于结构型模式,它是作为现有的类的一个包装。 装饰器模式结构图 Component(抽象构件) :它是装饰类和具体构件的公共父类(一般是接口或者抽象类); ConcreteComp
阅读全文
摘要:结构型设计模式 结构型模式(Structural Pattern)描述如何将类或者对象结合在一起形成更大的结构,就像搭积木,可以通过简单积木的组合形成复杂的、功能更为强大的结构。 结构型模式可以分为 类结构型模式 和 对象结构型模式 : 类结构型模式关心类的组合,由多个类可以组合成一个更大的 系统,
阅读全文
摘要:本系列博客是自己在学习设计模式过程中收集整理的文章集合,其他文章参看 "设计模式传送门" 建造者模式简介 建造者模式是一种创建型设计模式,这种模式具有很好的封装性。使用建造者模式可以有效的封装变化,在使用建造者模式的场景中,一般产品类和建造者类是比较稳定的,因此,将主要的业务逻辑封装在导演类中对整体
阅读全文
摘要:本系列博客是自己在学习设计模式过程中收集整理的文章集合,其他文章参看 "设计模式传送门" 本文是转载文章 ,原文请参见 "设计模式(九)——建造者模式" 概念 建造者模式(英:Builder Pattern)是一种创建型设计模式,又名:生成器模式。GOF 给建造者模式的定义为:将一个复杂对象的构建与
阅读全文
摘要:本系列博客是自己在学习设计模式过程中收集整理的文章集合,其他文章参看 "设计模式传送门" 本文是转载文章,原文请参见 "原文" 之前写过一篇关于工厂模式(Factory Pattern)的随笔,里面分析了简单工厂模式,但对于工厂方法和抽象工厂的分析较为简略。 这里重新分析分析三者的区别,工厂模式是j
阅读全文
摘要:本系列博客是自己在学习设计模式过程中收集整理的文章集合,其他文章参看 "设计模式传送门" 本文是转载文章,原文请参见 "原文" 之前的文章 "设计模式(二)—— 简单工厂模式" 中提到:简单工厂模式违反了开闭原则,每次有新的类要创建的时候,都需要修改工厂类。 本文介绍了一种新的工厂模式——工厂方法模
阅读全文
摘要:本系列博客是自己在学习设计模式过程中收集整理的文章集合,其他文章参看 "设计模式传送门" 本文是转载文章,原文请参见 "原文" 概念 简单工厂模式是属于创建型模式,又叫做静态工厂方法(Static Factory Method)模式。简单工厂模式是由一个工厂对象决定创建出哪一种产品类的实例。简单工厂
阅读全文
摘要:本系列博客是自己在学习设计模式过程中收集整理的文章集合,其他文章参看 "设计模式传送门" 单例模式简介 单例模式的目的是保证系统中只有类的一个实例对象,并且提供一个全局的入口点来获取并使用这个实例对象。 使用单例模式可以防止用户“胡乱”创建对象,耗费内存。而且有些对象从逻辑上来讲一个系统中只应该存在
阅读全文
摘要:本系列博客是自己在学习设计模式过程中收集整理的文章集合,其他文章参看 "设计模式传送门" 本文是转载文章 ,原文请参见 "设计模式(二)——单例模式" 概念 单例模式( )是 Java 中最简单的设计模式之一。这种类型的设计模式属于创建型模式。在 "GOF 书" 中给出的定义为: 保证一个类仅有一个
阅读全文
摘要:本系列博客是自己在学习设计模式过程中收集整理的文章集合,其他文章参看 "设计模式传送门" 本文是转载文章 ,原文请参见 "设计模式(一)——设计模式概述" 在软件工程中,设计模式(design pattern)是对软件设计中普遍存在的各种问题,所提出的解决方案。设计模式并不是固定的一套代码,而是针对
阅读全文
摘要:本系列博客是自己在学习 设计模式 过程中收集整理的文章集合。其中有的是自己原创的文章,有的是自己转载的文章。整理成贴,方便后续查找回顾。 设计模式基础知识 本章节的文章主要介绍设计模式的基础知识,包括软件开发的基本原则,23种常见的设计模式等。 创建型模式 "设计模式(开篇)—— 设计模式概述" "
阅读全文
