
设计模式
文章平均质量分 78
I_am_student
这个作者很懒,什么都没留下…
展开
-
策略设计模式
本文从以下方面介绍策略模式一、策略模式概念二、策略模式的示例三、策略模式的优缺点四、总结 一、策略模式概念 策略模式是对算法的包装,是把使用算法的责任和算法本身分割开来,交给不同的对象管理。策略模式通常把一个系列的算法包装到一系列的策略类里面,作为一个抽象策略类的子类。 此模式涉及到三个场景: ● 环境(Context)(用于客...原创 2018-01-01 12:44:05 · 81 阅读 · 0 评论 -
观察者模式
本文从以下方法阐述观察者模式一、定义观察者二、观察者模式示例三、推模型与拉模型四、JAVA内置观察者五、总结 一、定义观察者模式 1、定义 观察者模式为对象的行为模式,主要定义一种一对多的对象关系(观察者:主题对象=1:n)。让多个观察者对象去监听同一个主题对象Subject(被依赖的对象),当主题对象的内容状态发生变化时,会通知所有注册过...原创 2018-01-02 21:14:08 · 124 阅读 · 0 评论 -
责任链模式
本文从以下几个示例介绍责任链模型 一、概念 责任链模式是一种对象的行为模式。在责任链模式里,很多对象由每一个对象对其下家的引用而连接起来形成一条链。请求在这个链上传递,直到链上的某一个对象决定处理此请求。发出这个请求的客户端并不知道链上的哪一个对象最终处理这个请求,这使得系统可以在不影响客户端的情况下动态地重新组织和分配责任。 二、示例展示 1、简单示例...原创 2018-01-05 23:59:27 · 178 阅读 · 0 评论 -
工厂设计模式
本文从以下方面介绍工厂模式一、总述二、工厂方法三、抽象工厂 一、总述1、分类:(1)简单工厂(静态工厂)(2)工厂方法模式(3)抽象工厂模式 2、工厂模式意义: 将程序中创建对象的部分单独抽取出来,实现与主程序之间的解耦。具有更好的扩展性及维护性。 3、工厂方法模式与抽象工厂模式异同点 (1)相同点:都是将对象(产品...原创 2018-01-07 13:41:33 · 134 阅读 · 0 评论 -
代理模式
本文主要从示例入手介绍代理模式一、实现代理的方式继承、组合二、动态代理 一、实现代理的方式继承、组合 1、引入:代理模式的实现类似于装饰者模式,都是对功能的增强。很多模式之间的实现都有类似点,不同点可能也是语义有差别 2、继承方式的代理 2.1、代码示例 说明:Moveable接口,以及Tank实现类为以下所有示例公用 pac...原创 2018-01-14 23:45:12 · 101 阅读 · 0 评论 -
Future模式
一、Future模式概述二、Future序列图三、示例代码 一、Future模式概述 Future类似于商品订单问题,当用户看上一件商品之后,下单完成在家里等待送货上门即可。更形象的一个例子就是页面发送AJAX请求,页面异步进行后台处理,用户无需一直等待结果,可以浏览其他东西。 Future的原理是:当你申请资源(计算资源或I/O资源)时,立即返回一个虚拟...原创 2018-04-06 09:37:41 · 97 阅读 · 0 评论 -
Master-worker模式
1、Master-worker模式: 常用的并行计算模式。 核心思想为:系统中有两个进程协同工作:Master进程,worker进程。 Master:负责接收与分配任务,当worker(线程任务)执行完毕后,将返回的结果告知Master,Master对接收的任务进行汇总处理。 Worker:为一个线程任务对象,处理Master分配的任务,并...原创 2018-04-07 11:43:04 · 289 阅读 · 0 评论 -
生产消费模式
1、生产者消费者模型 经典的多线程模型; 通常有两类线程:若干生产者线程,若干消费者线程; 生产者线程:提交用户请求; 消费者线程:处理生产者提交的任务,在生产和消费之间通过共享内存缓存区进行数据通信; 2、流程图 3、代码示例(1)生产者package net.oschina.tkj.mulitcoding....原创 2018-04-07 11:51:42 · 346 阅读 · 0 评论 -
适配器模式
1、适配器模式分类(1)对象适配器(2)类适配器 2、对象适配器(1)概念:将一个类的接口转为另外一个类的接口,让原来不兼容得类变得兼容(2)原理: 对象适配器采用组合的方式,适配器对象实现目标类的接口,重写目标类的方法。此时,适配器类中组合了一个被适配的对象,其实质在重写目标类的方法时调用被适配器类对象的方法 (3)优点:①从用户的角度...原创 2018-04-07 12:15:29 · 86 阅读 · 0 评论