
设计模式
CL有毒
这个作者很懒,什么都没留下…
展开
-
【设计模式In Java】三、原型模式
原型模式文章目录原型模式定义场景UML图代码总结定义原型模式(Prototype Pattern):使用原型实例指定创建对象的种类,并且通过拷贝这些原型创建新的对象。原型模式是一种对象创建型模式。场景在开发一个软件自动化部署工具时,用户可以在WEB页面上创建一个配置文件,然后软件会在用户指定的机器上按照用户的配置创建服务;但改软件的配置项非常多,如果一个个指定会非常麻烦;有时候想在另一个...原创 2019-02-25 17:17:25 · 438 阅读 · 0 评论 -
【设计模式In Java】十三、命令模式
命令模式文章目录命令模式定义场景UML类图代码总结定义命令模式(Command Pattern):将一个请求封装为一个对象,从而让我们可用不同的请求对客户进行参数化;对请求排队或者记录请求日志,以及支持可撤销的操作。命令模式是一种对象行为型模式,其别名为动作(Action)模式或事务(Transaction)模式。场景开发一个Android App,定义了很多手势操作,比如单指左滑右滑、...原创 2019-03-07 21:17:25 · 442 阅读 · 0 评论 -
【设计模式In Java】十八、观察者模式
观察者模式文章目录观察者模式定义场景UML类图代码总结定义观察者模式(Observer Pattern):定义对象之间的一种一对多依赖关系,使得每当一个对象状态发生改变时,其相关依赖对象皆得到通知并被自动更新。观察者模式的别名包括发布-订阅(Publish/Subscribe)模式、模型-视图(Model/View)模式、源-监听器(Source/Listener)模式或从属者(Depend...原创 2019-03-15 11:48:11 · 431 阅读 · 0 评论 -
【设计模式In Java】十三、解释器模式
解释器模式文章目录解释器模式定义场景UML类图代码总结定义解释器模式(Interpreter Pattern):定义一个语言的文法,并且建立一个解释器来解释该语言中的句子,这里的“语言”是指使用规定格式和语法的代码。解释器模式是一种类行为型模式。场景光看定义或名字就能明白,解释其模式就是将一定的文法解释成程序可以理解的结构,然后输出结果,比如输入一个四则运算表达式计算出结果、写一个计算机...原创 2019-03-14 12:00:59 · 272 阅读 · 0 评论 -
【设计模式In Java】十七、备忘录模式
备忘录模式文章目录备忘录模式定义场景UML类图代码总结定义备忘录模式(Memento Pattern):在不破坏封装的前提下,捕获一个对象的内部状态,并在该对象之外保存这个状态,这样可以在以后将对象恢复到原先保存的状态。它是一种对象行为型模式,其别名为Token。场景跟CTRL+Z一个意思,那就做一个悔棋和撤销的功能吧。UML类图代码memento示例:public clas...原创 2019-03-09 18:59:08 · 463 阅读 · 0 评论 -
【设计模式In Java】十六、中介者模式
中介者模式文章目录中介者模式定义场景UML类图代码总结定义中介者模式(Mediator Pattern):用一个中介对象(中介者)来封装一系列的对象交互,中介者使各对象不需要显式地相互引用,从而使其耦合松散,而且可以独立地改变它们之间的交互。中介者模式又称为调停者模式,它是一种对象行为型模式场景现在有一个Web系的用户管理模块,由于访问量很大,会频繁查询用户表,为了减轻系统压力,决定使用...原创 2019-03-09 17:40:48 · 393 阅读 · 0 评论 -
【设计模式In Java】十五、迭代器模式
迭代器模式文章目录迭代器模式定义场景UML类图代码总结定义迭代器模式(Iterator Pattern):提供一种方法来访问聚合对象,而不用暴露这个对象的内部表示,其别名为游标(Cursor)。迭代器模式是一种对象行为型模式。场景Java集合遍历几乎都支持迭代器模式,一切聚合对象的遍历都可以使用迭代器模式,这里用List和Iterator举例。UML类图代码iterator示例...原创 2019-03-08 23:10:48 · 294 阅读 · 0 评论 -
【设计模式In Java】十二、职责链模式
职责链模式文章目录职责链模式定义场景UML类图代码总结定义职责链模式(Chain of Responsibility Pattern):避免请求发送者与接收者耦合在一起,让多个对象都有可能接收请求,将这些对象连接成一条链,并且沿着这条链传递请求,直到有对象处理它为止。职责链模式是一种对象行为型模式。场景在web应用程序中,一般都会使用到filter,即拦截请求并对请求做一定处理,比如解码...原创 2019-03-02 18:40:26 · 347 阅读 · 0 评论 -
【设计模式In Java】五、适配器模式
适配器模式文章目录适配器模式定义场景代码对象适配器模式类适配器模式双向适配器缺省适配器总结定义适配器模式(Adapter Pattern):将一个接口转换成客户希望的另一个接口,使接口不兼容的那些类可以一起工作,其别名为包装器(Wrapper)。适配器模式既可以作为类结构型模式,也可以作为对象结构型模式。在适配器模式定义中所提及的接口是指广义的接口,它可以表示一个方法或者方法的集合。在适...原创 2019-02-26 17:51:55 · 387 阅读 · 0 评论 -
【设计模式In Java】十一、代理模式
代理模式文章目录代理模式定义场景UML类图代码总结定义代理模式(Proxy Pattern):给某一个对象提供一个代理或占位符,并由代理对象来控制对原对象的访问。当无法直接访问某个对象或访问某个对象存在困难时可以通过一个代理对象来间接访问,为了保证客户端使用的透明性,所访问的真实对象与代理对象需要实现相同的接口。根据代理模式的使用目的不同,代理模式又可以分为多种类型,例如保护代理、远程代理...原创 2019-03-02 17:36:17 · 182 阅读 · 0 评论 -
【设计模式In Java】十、享元模式
享元模式文章目录享元模式定义场景UML类图代码总结定义享元模式(Flyweight Pattern):运用共享技术有效地支持大量细粒度对象的复用。系统只使用少量的对象,而这些对象都很相似,状态变化很小,可以实现对象的多次复用。由于享元模式要求能够共享的对象必须是细粒度对象,因此它又称为轻量级模式,它是一种对象结构型模式。场景现有一个代理程序,接受用户的请求然后连接到目标主机上获取信息,然...原创 2019-03-02 16:12:36 · 247 阅读 · 0 评论 -
【设计模式In Java】九、外观模式
外观模式文章目录外观模式定义场景UML类图代码总结定义外观模式(Facade Pattern):为子系统中的一组接口提供一个统一的入口。外观模式定义了一个高层接口,这个接口使得这一子系统更加容易使用。外观模式中,一个子系统的外部与其内部的通信通过一个统一的外观类进行,外观类将客户类与子系统的内部复杂性分隔开,使得客户类只需要与外观角色打交道,而不需要与子系统内部的很多对象打交道。场景现...原创 2019-03-02 14:44:27 · 358 阅读 · 0 评论 -
【设计模式In Java】八、装饰模式
装饰模式文章目录装饰模式定义场景UML类图代码总结定义装饰模式(Decorator Pattern):动态地给一个对象增加一些额外的职责,就增加对象功能来说,装饰模式比生成子类实现更为灵活。装饰模式是一种对象结构型模式。场景现有一个加密模块,可以对字符串明文加密,有不同的加密方法,不同场景下对加密的级别不同,可能在有些业务场景需要用不同的加密方法多次加密,要求能够以任意组合方式加密。难道...原创 2019-03-02 00:49:39 · 403 阅读 · 0 评论 -
【设计模式In Java】七、组合模式
组合模式文章目录组合模式定义场景UML类图代码总结定义组合模式(Composite Pattern):组合多个对象形成树形结构以表示具有“整体—部分”关系的层次结构。组合模式对单个对象(即叶子对象)和组合对象(即容器对象)的使用具有一致性,组合模式又可以称为“整体—部分”(Part-Whole)模式,它是一种对象结构型模式。组合模式的关键是定义了一个抽象构件类,它既可以代表叶子,又可以代表...原创 2019-03-01 22:20:19 · 333 阅读 · 0 评论 -
【设计模式In Java】四、建造者模式
建造者模式文章目录建造者模式定义场景UML类图代码简化总结定义建造者模式(Builder Pattern):将一个复杂对象的构建与它的表示分离,使得同样的构建过程可以创建不同的表示。建造者模式是一种对象创建型模式。场景当一个对象的构造过程非常复杂,比如有特别多的属性,或者构造时有特定的顺序,甚至是属性之间有特殊的依赖关系等,这个时候可以使用构建者模式来创建对象。假设现在要创建计算机学院...原创 2019-02-25 23:00:58 · 258 阅读 · 0 评论 -
【设计模式In Java】六、桥接模式
桥接模式文章目录桥接模式定义场景UML类图代码总结定义桥接模式(Bridge Pattern):将抽象部分与它的实现部分分离,使它们都可以独立地变化。它是一种对象结构型模式,又称为柄体(Handle and Body)模式或接口(Interface)模式。场景现在要开发一个报表系统,报表数据来源有很多,包括mysql数据库、mongodb、REST API等,报表输出的形式也很多,包括邮...原创 2019-03-01 16:33:52 · 505 阅读 · 0 评论 -
【设计模式In Java】十九、状态模式
状态模式文章目录状态模式定义场景UML类图代码总结定义状态模式(State Pattern):允许一个对象在其内部状态改变时改变它的行为,对象看起来似乎修改了它的类。其别名为状态对象(Objects for States),状态模式是一种对象行为型模式。场景现在需要异步自动化部署一个应用,部署分为几个状态:开始部署、部署成功、部署失败、开始启动、启动成功、启动失败,其中开始部署阶段需要向...原创 2019-03-20 16:56:04 · 459 阅读 · 0 评论