1、意图: 将一个类的接口转换成客户希望的另外一个接口。Adapter模式使得原本由于接口不兼容而不能一起工作的那些类可以一起工作。2、场景描述: 手机的Usb数据线可以被看做适配器,不同类型的手机通过不同的Usb数据线连接到电脑相同的usb接口上。几年前的非智能手机,数据线连接手机的一端由于手.....
分类:
其他好文 时间:
2014-09-02 09:04:14
阅读次数:
240
这篇博文,我们以类图和代码的形式来对比学习一下静态代理和动态代理,重点解析各自的优缺点。
定义
代理模式(Proxy Pattern)是对象的结构型模式,代理模式给某一个对象提供了一个代理对象,并由代理对象控制对原对象的引用。
静态代理VS动态代理,打成了平手,各自有各的独特之处,均不可代替,在项目中到底使用哪种代理,没有最好,只有更合适。...
分类:
编程语言 时间:
2014-08-23 08:50:30
阅读次数:
275
一、设计模式的分类总体来说设计模式分为三大类:创建型模式,共五种:工厂方法模式、抽象工厂模式、单例模式、建造者模式、原型模式。结构型模式,共七种:适配器模式、装饰器模式、代理模式、外观模式、桥接模式、组合模式、享元模式。行为型模式,共十一种:策略模式、模板方法模式、观察者模式、迭代子模式、责任链模式...
分类:
其他好文 时间:
2014-08-20 08:09:46
阅读次数:
331
模式分类:从目的来看:1.创建型(Creational)模式:负责对象创建。2.结构型(Structural)模式:处理类于对象间的组合。3.行为型(Behavioral)模式:类与对象交互中的职责分配。从范围看:1.类模式处理类于子类的静态关系。2.对象模式处理对象间的动态关系。动机在软件系统中,...
分类:
其他好文 时间:
2014-08-19 23:48:05
阅读次数:
326
我们接着讨论设计模式,上篇文章我讲完了5种创建型模式,这章开始,我将讲下7种结构型模式:适配器模式、装饰模式、代理模式、外观模式、桥接模式、组合模式、享元模式。其中对象的适配器模式是各种模式的起源,我们看下面的图:适配器模式将某个类的接口转换成客户端期望的另一个接口表示,目的是消除由于接口不匹配所造...
分类:
编程语言 时间:
2014-08-18 12:57:02
阅读次数:
250
第七章 设计模式类别一、设计模式有三种类别 1、创建型模式:专注于处理对象机制。包括:构造器、工厂、抽象、原型、单例、生成器 2、结构型模式:用于找出在不同对象之间建立关系密切的简单方法。包括:装饰者、外观、享元、适配器、代理 3、行为模式:用于改善或简化系统中不同对象之间的通信。包括:迭代...
分类:
编程语言 时间:
2014-08-16 22:30:11
阅读次数:
220
概述 外观模式,我们通过外观的包装,使应用程序只能看到外观对象,而不会看到具体的细节对象,这样无疑会降低应用程序的复杂度,并且提高了程序的可维护性。例子:一个电源总开关可以控制四盏灯、一个风扇、一台空调和一台电视机的启动和关闭。该...
分类:
其他好文 时间:
2014-08-13 12:46:06
阅读次数:
226
在设计模式汇总中,我们已经从宏观上分析了三类设计模式的分类依据,下面详细总结一下结构型设计模式。结构型设计模式是从类的结构优化的角度为了减少创建对象的数量和提高代码的复用性考虑的。下面参加设计模式的讨论之后参考大话设计,主要是加入很多自己理解总结的一张思维导图。
我的分类原则,这里说明一下:结构型设计模式主要功能时系统的“瘦身”,优化代码。其中装饰模式和外观模式是针对对象本身的抽象封装。...
分类:
其他好文 时间:
2014-08-13 01:13:55
阅读次数:
154
概述 在软件系统中,某些类型由于自身的逻辑,它具有两个或多个维度的变化,那么如何应对这种“多维度的变化”?如何利用面向对象的技术来使得该类型能够轻松的沿着多个方向进行变化,而又不引入额外的复杂度?例子:设想如果要绘...
分类:
其他好文 时间:
2014-08-12 13:12:24
阅读次数:
227
我们在开发Android的时候经常通过Adapter把数据和UI对象连接在一起,spinner、ListView之类的控件都可以用适配器来自定义其组建,使其更加丰富。适配器模式是将两个不兼容的类纠合在一起使用,属于结构型,需要有Adaptee(被适配者)和Adaptor(适配器)两个身份。简单的来说,就是你有一个机器人是只会踢足球的,另一个机器人只会打篮球的,然后你想有让他既会踢足球又会打篮球,那...
分类:
移动开发 时间:
2014-08-11 15:10:02
阅读次数:
245