`

策略模式与代理模式

 
阅读更多

出自网友:cbf4life   (JAVAEYE论坛)

策略模式与代理模式

 

1. 代理模式(proxy)------  属于结构型模式(描述对象如何通过继承或组合形成复杂的结构)

    西门庆通过王婆这个代理,与潘金莲私通;

    (1) 在这里,西门庆属于客户,提出需求;

    (2) 王婆是代理人,相当于现在明星的经纪人,把客户的需求交给潘金莲,让潘金莲去做;

    注意: 客户不管是谁做的,只管自己的需求是否满足;王婆把潘金莲联系好,当然,她也还可以去联系别的女人,做多人的经纪人;

 

2. 策略模式(消除开关语句Switch的好模式)   )------  属于行为型模式 (行为模式不仅描述对象的模式,还描述它们之间的通信关系和职责分配) 

   作者举的例子:

刘备要取媳妇,诸葛亮拿出装了三个妙计的锦囊给赵云,赵云依计行事,让周瑜丢了夫人又折兵;

场景: 三个妙计, 一个锦囊, 赵云

 

注意:这里每个妙计是一个具体类,三个妙计抽象出一个公共接口,锦囊是一个含有妙计的公共接口的具体类;赵云是执行者;                      

 

   

 

分享到:
评论

相关推荐

    js策略模式和代理模式

    代理模式中的代理对象和目标对象实现相同的接口,客户端与代理对象进行交互,代理对象则根据具体情况决定是否将请求转给目标对象。在JavaScript中,代理模式可用于控制对象访问、惰性初始化、访问日志记录等。 ...

    简单工厂模式、代理模式、策略模式如此相似

    在软件设计模式的世界里,"简单工厂模式"、"代理模式"和"策略模式"都是经典的设计模式,它们各自有着独特的应用场景和优缺点。本文将深入解析这三种模式的原理和区别,帮助读者理解它们在实际开发中的运用。 首先,...

    策略模式和代理模式.docx

    策略模式和代理模式作为设计模式中的两个重要概念,在软件开发领域有着广泛的应用价值。虽然两者在形式上存在相似之处,但它们在功能和应用场景上却有着本质的区别。通过深入分析这两种模式的特点、适用场景以及如何...

    Spring下使用策略模式

    在Spring框架中,策略模式是一种常见的设计模式,它允许我们定义一组可互换的策略,这些策略可以在运行时根据需求动态选择。这篇文章将深入探讨如何在Spring中运用策略模式,并结合源码分析其工作原理。 策略模式的...

    python 项目里常用的设计模式 组合模式 策略模式 抽象工厂 代理模式 工厂模式 观察者模式 简单工厂 建造者模式 模板模式

    python 项目里常用的设计模式 单例模式 组合模式 策略模式 抽象工厂 代理模式 工厂模式 观察者模式简单工厂 建造者模式 模板模式 桥接多维度 桥接模式 适配器模式 外观模式 享元模式 责任链组合模式

    23种设计模式之:建造者,代理,观察,策略,状态模式

    本文将重点介绍标题中提到的五种设计模式:建造者模式、代理模式、观察者模式、策略模式以及状态模式。 **1. 建造者模式(Builder)** 建造者模式是一种创建型设计模式,它允许我们分步骤构建复杂对象,而无需暴露...

    软件体系结构实验报告--设计模式2

    本实验报告主要探讨了五个关键的设计模式:组合模式、外观模式、代理模式、观察者模式以及策略模式,这些都是软件体系结构中的重要组成部分,对于理解和优化代码结构具有深远影响。 1. **组合模式**: 组合模式是一...

    结构型模式之代理模式(Proxy)

    代理模式的应用场景广泛,例如在Web开发中,可以通过代理模式来实现权限控制、缓存策略、日志记录等功能。在软件设计中,代理模式可以帮助我们遵循开闭原则,即对扩展开放,对修改关闭,因为它允许我们在不改变原有...

    代理模式Demo代理模式代理模式Demo

    总结来说,代理模式是一种灵活的设计策略,它允许我们在不修改原有系统的基础上,通过引入代理对象来扩展系统的功能,提高代码的可复用性和可维护性。通过理解和熟练运用代理模式,开发者能够更好地应对各种复杂的...

    Java 经典设计模式讲解以及项目实战

    3 策略模式 4 模板方法模式 5 工厂方法模式 6 抽象工厂模式 7 建造者模式 8 代理模式 9 装饰模式 10 原型模式 11 委派模式 12 适配器模式 设计模式综合运用 1 门面+模版方法+责任链+策略 2 门面+模版方法+责任链+...

    网闸代理模式配置.docx

    深信服网闸代理模式配置是一项关键的安全管理任务,它涉及到网络访问控制和数据传输的安全性。网闸,全称为“安全隔离与信息交换系统”,主要用于实现不同安全等级网络之间的安全隔离,同时满足数据交换的需求。以下...

    设计模式:简单工厂、方法工厂、抽象工厂、单例、原型、委派、模板、代理、策略

    9. **策略**:策略模式是一种行为设计模式,它使你能在运行时改变对象的行为。策略定义了一系列算法,并将每一个算法封装起来,使它们可以相互替换,策略让算法独立于使用它的客户。 这些设计模式都是面向对象编程...

    iOS策略模式的实现

    在实际项目中,可以结合其他设计模式如工厂模式、代理模式等,进一步优化代码结构。 压缩包文件`Chung_Ch19_Strategy_code`可能包含了示例代码,你可以下载后进行学习和参考,以更深入地理解策略模式在iOS开发中的...

    cas代理模式代码示例

    在IT行业中,代理模式是一种常见的设计模式,它允许我们在不修改原有对象的基础上,为对象添加新的功能或控制访问。在本示例中,我们将重点讨论如何在Java环境下使用代理模式来实现代理逻辑,特别是在CAS(Central ...

    java 设计模式 mvc模式 单例模式 代理 工厂 简单工厂

    MVC模式使得用户界面与数据逻辑分离,单例模式保证关键资源的唯一访问点,代理模式在访问对象前后增加额外的功能,工厂模式将对象创建与使用分离,简单工厂模式为对象创建提供一个简单便捷的接口。通过这些模式,...

    设计模式之_代理模式

    **代理模式**是一种常用的设计模式,它在软件开发中扮演着重要的角色,特别是在对象的访问控制、性能优化、安全策略等方面。代理模式的核心思想是为一个对象提供一个替身,这个替身即代理对象,代理对象可以控制对原...

    23种设计模式详解PDF

    设计模式 的分类 总体来说设计模式分为三大类: 创建型模式(5): ...策略模式、模板方法模式、观察者模式、迭代子模式、责任链模式、命令模式、备忘录模式、状态模式、访问者模式、中介者模式、解释器模式。

    LED照明灯具代理模式

    LED照明灯具代理模式是一种在照明行业中常见的销售渠道策略,旨在通过合作伙伴关系扩大市场覆盖面,提高品牌知名度和销售量。这种模式的核心在于寻找合适的代理商,与他们建立长期稳定的关系,共同推动LED照明灯具的...

    unity-23种常见设计模式unity版

    结构型模式:共七种:适配器模式、装饰器模式、代理模式、外观模式、桥接模式、组合模式、享元模式。 行为型模式:共十一种:策略模式、模板方法模式、观察者模式、迭代子模式、责任链模式、命令模式、备忘录模式、...

Global site tag (gtag.js) - Google Analytics