摘要:
模板方法模式 一、应用实例 编写制作豆浆的程序 1)制作豆浆的流程 选择 添加配料 浸泡 放到豆浆机打碎 2)通过添加不同的配料,可以制作出不同口味的豆浆 3)选材、浸泡、打碎步骤一样 二、模板方法模式 1.基本介绍 1)模板模式在一个抽象类公开定义了执行它的方法的模板。子类可以按需重写方法实现,但 阅读全文
摘要:
代理模式 一、代理模式 基本介绍 1)代理模式:为一个对象提供一个替身,以控制对这个对象的访问。即通过代理对象访问目标对象。这样做的好处是:可以在目标对象实现的基础上,扩展目标对象的功能。 2)被代理的对象可以是远程对象、创建开销大的对象或需要安全控制的对象 3)代理模式有不同的形式,主要有三种 静 阅读全文
摘要:
享元模式 一、应用实例 小型的外包项目,给客户A做一个产品展示网站,客户A的朋友感觉效果不错,也希望做这样的产品展示网站,但是要求都有些不同: 1)有客户要求以新闻的形式发布 2)有客户要求以博客的形式发布 3)有客户希望以微信公众号的形式发布 二、享元模式 1.基本介绍 1)享元模式也叫蝇量模 阅读全文
摘要:
外观模式 一、实例项目 组建一个家庭影院: DVD播放器、投影仪、自动屏幕、环绕立体声、爆米花机,要求直接用遥控器:统筹各设备开关 开爆米花机、放下屏幕、开投影仪、开音响、开DVD,去拿爆米花、调暗灯光、播放、观影结束后,关闭各种设备 二、外观模式(Facade) 1、基本介绍 1)外观模式,也叫过 阅读全文
摘要:
组合模式 一、应用实例 编写程序展示一个学校院系结构:要在一个页面中展示学校的院系组成,一个学校有多个学院,一个学院有多个系。 二、组合模式(Composite Pattern) 1.基本介绍 1)组合模式,又叫部分整体模式,将对象组合成树状结构。 2)组合模式使用户对单个对象和组合对象的访问具有一 阅读全文
摘要:
装饰者模式 一、应用实例 咖啡订单项目 1) 咖啡种类/单品咖啡:Espresso(意大利浓咖啡)、ShortBlack、LongBlack、Decaf 2)调料:Milk、Soy、Chocolate 3)要求在扩展新的咖啡种类时,有良好的扩展性、改动方便。 二、装饰者模式 动态的将新功能附加到对象 阅读全文
摘要:
桥接模式 一、实例问题 对不同手机类型的不同品牌实现一些操作(如:开机、关机、上网、打电话) 二、桥接模式 1.基本介绍 1)将实现与抽象放在两个不同的类层次中,使两个层次可以独立改变 2)是一种结构型设计模式 3)Bridge模式基本类的最小设计原则,通过使用封装、聚合及集成等行为让不同的类承担不 阅读全文
摘要:
适配器模式 一、基本介绍 1)适配器模式(Adapter Pattern)将某个类的接口转换成客户端期望的另一个接口表示,目的是兼容性。 2)适配器模式属于结构型模式 3)主要分为三类:类适配器模式、对象适配器模式、接口适配器模式 二、类适配器模式 1.类适配器模式 基本介绍:Adapter类,通过 阅读全文
摘要:
建造者模式 一、盖房项目需求 1)建房过程:打桩、砌墙、封顶 2)房子有多种样式:普通房、高楼、别墅。各种房子建造过程一样,要求不同 二、传统方式解决盖房需求 1.思路分析图解 2.代码实现 3.传统方式分析 1)过于简单,没有设计缓存层对象,程序的扩展和维护不好,这种方案把产品(房子)和创建产品的 阅读全文