随笔分类 - 设计模式
摘要:概念理解: 代理模式,是对简单处理程序(或指针)的增强,用于引用一个对象:这个指针被代理对象取代,代理对象位于客户端和真实程序之间,指针有一个可被多个目标利用的钩子。 参与者: client(参与者):取决于主体(Subject)实现 subject(主体):RealSubject的抽象 realS
阅读全文
摘要:引言:在理解迭代器模式之前,先了解一下迭代器的概念。迭代器(iterator)有时又称游标(cursor)是程序设计的软件设计模式,可在容器(container,例如链表或阵列)上遍访的接口,设计人员无需关心容器的内容。 迭代器(iterator)是一种对象,它能够用来遍历标准模板库容器中的部分或全
阅读全文
摘要:1.概念: 装饰器模式又叫做装饰者模式,是在不必改变原类文件和使用继承的情况下,动态地扩展一个对象的功能。传统的编程模式都是子类继承父类实现方法的重载,使用装饰器模式,只需添加一个新的装饰器对象,更加灵活,避免类数目和层次过多。 2.角色: Component(被装饰对象基类):定义一个对象接口,以
阅读全文
摘要:本文参考慕课网《大话PHP设计模式》-第五章内容编写,视频路径为:http://www.imooc.com/video/4876 推荐阅读我之前的文章: php的设计模式 三种基本设计模式,包括: 一、工厂模式 如果我们不使用工厂模式的话,当我们需要创建一个对象的时候,需要new一个对象。 当使用工
阅读全文
摘要:概念:适配器模式,将截然不同的函数接口封装成统一的API。实际应用举例,PHP的数据库操作有mysql、mysqli、pdo三种,可以用适配器模式统一。类似的场景还有将memcache、redis、file、apc等不同缓存函数统一成cache适配器。 适用场景: 系统要求使用现有的类,而且这些类的
阅读全文
摘要:概念:定义一系列的算法,把每一个算法封装起来,并且使它们可相互替换。本模式使得算法可独立于使用它的客户而变化,也成为政策模式(Policy)。 Define a family of algorithms,encapsulate each one,and make them interchangeab
阅读全文
摘要:简言之:观察者模式(Observer),当一个对象状态发生改变时,依赖它的对象全部会收到通知,并自动更新。 具体描述:一个对象通过添加一个方法(该方法允许另一个对象-观察者,注册自己)使本身变得可观察。当可观察的对象更改时,它会将消息发送到已注册的观察者。这些观察者使用该信息执行的操作与可观察的对象
阅读全文
摘要:概念理解:原型模式是先创建好一个原型对象,然后通过clone原型对象来创建新的对象。适用于大对象的创建,因为创建一个大对象需要很大的开销,如果每次new就会消耗很大,原型模式仅需内存拷贝即可。 主要角色: Prototype(抽象原型角色):声明一个克隆自身的接口 Concrete Prototyp
阅读全文
摘要:概念:简言之,数据映射模式就是将对象和数据存储映射起来,对一个对象的操作会映射为对数据存储的操作。 深入理解:数据映射,是在持久化数据存储层(一般是关系型数据库)和驻于内存的数据表现层之间进行双向数据传输的数据访问层。 数据映射模式的目的是让持久化数据存储层,驻于内存的数据表现层,以及数据映射本身三
阅读全文

浙公网安备 33010602011771号