随笔分类 -  设计模式

摘要:一、Spring 中观察者模式的四个角色 1. 事件(ApplicationEvent) ApplicationEvent 是所有事件对象的父类。ApplicationEvent 继承自 jdk 的 EventObject, 所有的事件都需要继承 ApplicationEvent, 并且通过 sou 阅读全文
posted @ 2019-06-20 20:02 JMCui 阅读(10400) 评论(2) 推荐(1) 编辑
摘要:一、剩下的模式 1、桥接模式(Bridge Pattern) 概念:不只改变你的实现,也改变你的抽象。桥接模式的主要特点是把抽象(Abstraction)与行为实现(Implementation)分离开来,从而可以保持各部分的独立性以及应对他们的功能扩展。 角色:  1. 实现类接口(Im 阅读全文
posted @ 2019-02-22 10:36 JMCui 阅读(667) 评论(0) 推荐(1) 编辑
摘要:一、概念 代理模式:为另一个对象提供一个替身或占位符已控制对这个对象的访问,管理访问的方式有许多种。 角色:  1、Subject:主题接口,为 RealSubject 和 Proxy 提供了接口。通过实现同一接口,Proxy 在 RealSubject 出现的地方的取代它。   阅读全文
posted @ 2019-01-30 14:35 JMCui 阅读(747) 评论(0) 推荐(1) 编辑
摘要:一、概念 状态模式:允许对象在内部状态改变时改变它的行为,对象看起来好像修改了它的类。这个模式将状态封装成为独立的类,并将动作委托到代表当前状态的对象,我们知道行为会随着内部状态而改变。 一个对象“看起来好像修改了它的类”是什么意思呢?从客户的视角来看:如果说你使用的对象能够完全改变它的行为,那么你 阅读全文
posted @ 2019-01-17 09:14 JMCui 阅读(641) 评论(0) 推荐(1) 编辑
摘要:一、概念 组合模式:允许你将对象组合成树形结构来表现“整体/部分”层次结构。组合能让客户以一致的方式处理个别对象以及对象组合。 组合包含组件。组件有两种:组合和叶节点元素。组合持有一群孩子,这些孩子可以是别的组合或者叶节点元素。 角色:  组合部件(Component):它是一个抽象角色, 阅读全文
posted @ 2019-01-02 13:14 JMCui 阅读(446) 评论(0) 推荐(0) 编辑
摘要:一、概念 模板方法模式:在一个方法中定义一个算法的骨架,而将一些步骤延迟到子类中。模板方法使得子类可以在不改变算法结构的情况下,重新定义算法中的某些步骤。 解析:模板方法模式用来创建一个算法的模板。什么是模板?模板就是一个方法。更具体地说,这个方法将算法定义成一组步骤,其中的任何步骤都可以是抽象的, 阅读全文
posted @ 2018-12-21 09:35 JMCui 阅读(357) 评论(0) 推荐(0) 编辑
摘要:一、适配器模式 1、概念 定义:将一个类的接口,转换成客户期望的另一个类的接口,适配器让原本接口不兼容的类可以合作无间。 安卓转Type C头,就是一个典型的适配器模式。在安卓头和 Type C 之间引入适配器,安卓头是被适配者。 解析:   1、 客户(Client)通过目标接 阅读全文
posted @ 2018-12-17 19:54 JMCui 阅读(556) 评论(0) 推荐(0) 编辑
摘要:一、概念 命令模式:将“请求”封装成对象,以便使用不同的请求、队列或者日志来参数化其他对象。命令模式也支持可撤销的操作。 角色:  1、命令(Command):为所有命令声明了一个接口。调用命令对象的 execute()方法,就可以让接收者进行相关的操作。这个接口也具备一个 undo() 阅读全文
posted @ 2018-11-30 09:18 JMCui 阅读(6751) 评论(0) 推荐(4) 编辑
摘要:一、概念 工厂方法模式:用来封装对象的创建。工厂方法模式(Factory Method Pattern)通过让 子类 决定该创建的对象是什么,来达到将对象创建的过程封装的目的。这样,关于超类的代码和子类创建对象的代码之间就解耦了。 抽象工厂模式(Abstract Factory Pattern):提 阅读全文
posted @ 2018-11-20 15:20 JMCui 阅读(3560) 评论(1) 推荐(0) 编辑
摘要:一、概念 继承的缺点:类数量爆炸、设计死板以及基类加入的新功能可能并不适用于所有的子类。 装饰者模式:动态地将责任附加到对象上,若要扩展功能,装饰者提供了比继承更有弹性的替代方案。一言以蔽之 —— 动态扩展类的行为。 角色:   1、抽象组件(Component):给出一个抽象类 阅读全文
posted @ 2018-11-14 18:04 JMCui 阅读(536) 评论(0) 推荐(0) 编辑
摘要:一、概念 观察者模式:定义了对象之间的一对多依赖,这样一来,当一个对象改变状态时,它的所有依赖者都会收到通知并自动更新。 观察者模式四个角色:  1、抽象主题:定义对观察者管理的接口,包括 订阅、取消订阅、通知接口。  2、具体主题:把所有观察者对象的引用保存在一个聚集(比如Ar 阅读全文
posted @ 2018-11-10 21:03 JMCui 阅读(575) 评论(0) 推荐(0) 编辑
摘要:网上介绍设计模式的文章有很多,好文也不少。作为设计模式的初学者,实在不敢多加造次。就仅以此文作为我记忆的备忘录吧! 设计模式的三要素:可复用、可维护、可扩展。 一、介绍 策略模式是对算法的包装,是把使用算法的责任和算法本身分割开来,委派给不同的对象管理。策略模式通常把一个系列的算法包装到一系列的策略 阅读全文
posted @ 2018-11-06 19:40 JMCui 阅读(717) 评论(2) 推荐(0) 编辑

点击右上角即可分享
微信分享提示