设计模式
大多多
脚踏实地,仰望星空。
展开
-
设计模式学习一、命令模式
一、什么叫做命令模式 定义:将请求封装成对象,这可以让你使用不同的队列,请求,或者日志请求来参数化其他对象。命令模式也支持撤销操作。二、使用场景 当需要将发出请求的对象和执行请求的对象解耦的时候使用命令模式。三、命令模式的构成: 命令模式包括:(1)命令接口或者命令抽象类(Command):定义命令类所需要原创 2017-10-30 17:52:13 · 210 阅读 · 0 评论 -
设计模式学习二、模板方法模式
一、什么是模板方法模式 模板设计方式:在一个方法中定义一个算法骨架,而将一些方法的实现放到子类中,这样使在不改变算法结构的情况下,重新定义算法中的一些步骤 ps:什么是模板,简单点说就是一个方法,这个方法定义了一组算法步骤。任何步骤都可以是抽象的,这些抽象的方法由子类来实现。二、使用场景 多个类有共同的原创 2017-11-01 11:29:06 · 205 阅读 · 0 评论 -
设计模式学习三、迭代器模式
一、什么是迭代器模式 提供一种方法顺序访问一个聚合对象中的各个元素,而又不暴露其内部的表示二、使用场景 通用的方法遍历集合元素三、模式构成 迭代器角色:定义遍历元素所需要的方法 具体迭代器角色:实现迭代器接口的方法 聚集类:Aggregate原创 2017-11-03 11:59:28 · 160 阅读 · 0 评论 -
设计模式学习四、状态模式
一、什么是状态模式 定义:允许对象在内部状态改变时改变它的行为,对象看起来好像改变了它的类二、什么时候用状态模式? 当控制一个对象状态转换的条件表达式过于复杂时,使用状态模式。把状态的判断逻辑转移到表示不同的一系列类当中,可以把复杂的逻辑判断简单化。(避免了写很多的if。。。。else)三、状态模式构成 Context上下文:定义原创 2017-11-04 19:12:13 · 220 阅读 · 0 评论 -
设计模式学习五、代理模式
一、什么是代理模式? 为另一个对象提供一个替身或一个占位符以控制对这个对象的访问。二、 代理类各种变体。 远程代理:使得客户端可以访问在远程主机的角色。 虚拟代理:当创建开销大的对象的时候,真正需要这个对象才创建它,当对象在创建前与创建中时候,由虚拟代理扮演对象替身的角色 保护代理:主要用于当前对原创 2017-11-06 14:46:19 · 218 阅读 · 0 评论