设计模式
文章平均质量分 65
卡卡西CC
疾如风徐如林侵掠如火不动如山~~~
展开
-
老僧长谈设计模式-11-原型模式
原型(Prototype)模式声明:本节内容源自网络【一句话介绍】“原型模式其实就是从一个对象再创建另外一个可定制的对象,而且不需要知道任何创建的细节”原型模式允许你通过复制现有的实例来创建新的实例(在Java中,这通常意味着使用clone()方法,或则反序列化Serilization)当创建给定类的实例的过程很昂贵或很复杂的时候,就使用原型模式(Prototype Pat转载 2016-12-17 23:14:21 · 520 阅读 · 0 评论 -
独孤九剑---设计模式总结
①单例模式②工厂模式纽约/芝加哥 披萨的故事③策略模式1.简略图2.小故事鸭子的故事:绿头鸭、红头鸭、橡皮鸭……④状态模式1.简略图与上同2.小故事糖果机的故事⑤观察者模式气象站的故事避免不了的耦合,尽量避免控制耦合⑥装饰者模式小故事:星巴克的故事-卖咖啡⑦代理模式原创 2016-12-20 16:33:11 · 520 阅读 · 0 评论 -
老僧长谈设计模式-7-代理模式
声明:本节内容主要来自Head First【what】代理模式是什么?代理模式给某一个对象提供一个代理对象,并由代理对象控制对原对象的引用。首先来一个简单的图,有一个初始的印象吧:代理模式的种类主要分为:远程(Remote)代理虚拟(Virtual)代理【How】还记得上一章状态模式里的糖果机吗?上一次的解决方案很转载 2016-04-09 23:15:27 · 617 阅读 · 0 评论 -
老僧长谈设计模式-7-代理模式2
说明;对前一篇 老僧长谈设计模式-7-代理模式 的补充1.静态代理模式2.动态代理模式InvocationHandlerjdk1.5中提供,利用反射。实现java.lang.reflect.InvocationHandler接口①必须要有一个业务接口/** * @author * @version V1.0 * @Dat转载 2017-11-27 17:14:24 · 316 阅读 · 0 评论 -
老僧长谈设计模式-10-桥接模式
声明:本节内容源自网络【一句话介绍】将抽象 与 实现 脱耦,使二者可以独立的变化。桥接模式通过将实现和抽象放在两个不同的类层次中而使它们可以独立改变。桥梁模式目的就是把抽象化角色和实现化角色的强耦合解除掉。【先混个脸熟】这个系统包含两个等级结构:抽象等级结构 & 实现等级结构。抽象化角色(Abstraction):抽象化给出的定义,并保存一个转载 2016-12-15 11:44:38 · 1136 阅读 · 0 评论 -
适配器模式-如何把火鸡变成鸭子
【开场白】这是一个与魔术相关的主题。有一个故事是如何把火鸡变成鸭子,这是一个神奇的故事【what】适配器模式是什么?适配器模式将一个类的接口转换成客户期望的另一个接口【How】①首先,鸭子接口/** * @author * @version V1.0 * @Date 2017年11月29日 下午8转载 2017-11-29 21:20:29 · 1438 阅读 · 0 评论 -
老僧长谈设计模式-5-装饰者模式
声明:本节内容主要来自Head First & Java 设计模式【开场白】一个咖啡馆的故事首先是名词解释,学好英语很重要。Beverage 饮料House Blend 综合咖啡(首选咖啡)DarkRoast 深焙咖啡Decaf 无咖啡因Espresso 浓咖啡Condiment 配料soy 豆浆mocha 摩卡whip 奶泡转载 2016-01-24 23:17:02 · 557 阅读 · 0 评论 -
刺客信条-【设计模式】-软件设计准则
【楔子】大道至简,形而上学。【内容】①高内聚,低耦合。耦合(coupling):模块间的耦合度是指模块之间的依赖关系,包括控制关系、调用关系、数据传递关系。模块间联系越多,其耦合性越强,同时表明其独立性越差。软件设计中通常用耦合度和内聚度作为衡量模块独立程度的标准。划分模块的一个准则就是高内聚低耦合。转载 2016-06-20 15:20:56 · 630 阅读 · 0 评论 -
老僧长谈设计模式-0-六大原则
声明:内容多来自网络,经整理而成。1. 单一职责原则(Single Responsibility Principle,简称SRP)不要存在多于一个导致类变更的原因。通俗的说,即一个类只负责一项职责。2.开放--封闭原则(The Open-Closed Principle,简称OCP)是说软件实体(类、模块、函数等等)应该可以扩展,但是不可以修改。即对于扩展是开放转载 2015-07-09 15:19:26 · 653 阅读 · 0 评论 -
老僧长谈设计模式-3-策略模式
声明:本节内容主要来自Head First好吧,现在带你进入策略模式的地盘【what】策略模式是什么测试【How】策略模式是如何构建的?孩子,这个要从一个故事开始……【why】为什么需要策略模式?【where & when】应用的场合? 时间?转载 2015-07-16 18:38:15 · 617 阅读 · 0 评论 -
老僧长谈设计模式-2-工厂模式
声明:根据网络内容整理而成【概述】工厂方法模式(Factory Method Pattern)通过让子类决定创建的对象时什么,来达到将对象创建的过程封装的目的。【类图】简单工厂模式:工厂模式:【举例】纽约匹萨和芝加哥匹萨的例子。纽约匹萨饼薄,芝加哥匹萨饼厚创建者类public abstract class P转载 2015-07-10 15:01:14 · 564 阅读 · 0 评论 -
老僧长谈设计模式-1-单例模式
声明:根据网络内容整理而成老衲认为这是最简单的设计模式了,那我们就从最简单的开始吧。【类图】【描述】【Show Code】先上代码public class Singleton{ private static Singleton instance = null; private Singleton(){} public static synchronized S转载 2015-07-09 15:56:04 · 566 阅读 · 0 评论 -
老僧长谈设计模式-4-观察者模式
声明:本节内容主要来自Head First好吧,现在带你进入观察者模式的世界【What】观察者模式是什么?观察者模式是JDK中使用最多的模式之一,非常有用。观察者设计模式定义了对象间的一种一对多的依赖关系以及松耦合(没错是耦合),以便一个对象的状态发生变化时,所有依赖于它的对象都得到通知并自动刷新。有了观察者,你将会消息灵通。类图【How】一个气象站的例...转载 2015-12-06 22:18:12 · 468 阅读 · 0 评论 -
老僧长谈设计模式-8-命令模式
声明:本节内容主要根据网络资源整理而成【一句话介绍】命令模式将 ‘请求’封装成对象,以便使用不同的请求、队列或者日志来参数化其他对象,命令模式也支持可撤销的操作封装请求成为对象。把方法调用[Method invocation]封装起来【先混个脸熟】①类图*图来自Java与模式-阎宏客户(Client)角色:创建了一个具体命令对象并确定其接收者。命转载 2016-12-12 15:47:44 · 365 阅读 · 0 评论 -
老僧长谈设计模式-9-责任链模式
【声明】本节内容源自网络【一句话介绍】当你想要让一个以上的对象有机会能够处理某个请求的时候,就使用责任链模式(Chain of Responsibility Pattern)。【先混个脸熟】①类图Handler 抽象处理者角色,定义出一个处理请求的接口。ConcreateHandler 具体处理者角色,具体处理者接到请求后,可以选择将请求处理掉,或者将请求传转载 2016-12-13 16:36:56 · 454 阅读 · 0 评论 -
老僧长谈设计模式-6-状态模式
声明:本节内容主要来自Head First好吧,现在带你进入策略模式的地盘【what】状态模式是什么?状态模式允许对象在内部状态改变时改变它的行为,对象看起来好像修改了它的类。封装基于状态的行为,并将行为委托到当前状态。模式图:【How】聪明的人都会讲故事,源自于Head First 的糖果机故事华丽登场啦转载 2016-02-05 14:53:42 · 544 阅读 · 0 评论