上一页 1 ··· 4 5 6 7 8 9 下一页
摘要: 观察者模式 (observer Pattern): 定义对象间的一种一对多的依赖关系,当一个对象的状态发生改变时,所有依赖于它的对象都得到通知并被自动更新。也叫发布-订阅模式 (一)为什么需要观察者模式 1,一个对象状态改变给其他对象通知的问题,而且要考虑到易用和低耦合,保证高度的协作 2,完美的将 阅读全文
posted @ 2018-03-06 21:46 jintaonote 阅读(267) 评论(0) 推荐(0)
摘要: 解释器模式(Interpreter Pattern): 提供了评估语言的语法或表达式的方式,它属于行为型模式。这种模式实现了一个表达式接口,该接口解释一个特定的上下文。这种模式被用在 SQL 解析、符号处理引擎等 (一)为什么需要解释器模式 (二)解释器模式UML图 (三)简单实例 解释器模式是开发 阅读全文
posted @ 2018-03-06 21:40 jintaonote 阅读(210) 评论(0) 推荐(0)
摘要: 数据映射模式(Data Mapper Pattern ):描述如何创建提供透明访问任何数据源的对象。数据映射模式,也叫数据访问对象模式,或数据对象映射模式。 (一)为什么需要数据映射模式 数据映射模式的目的是让持久化数据存储层、驻于内存的数据表现层、以及数据映射本身三者相互独立、互不依赖。这个数据访 阅读全文
posted @ 2018-03-06 21:04 jintaonote 阅读(459) 评论(0) 推荐(0)
摘要: 注册树模式(Registry Pattern ):注册树模式为应用中经常使用的对象创建一个中央存储器来存放这些对象 —— 通常通过一个只包含静态方法的抽象类来实现(或者通过单例模式)。也叫做注册器模式 (一)为什么需要注册树模式 (二)注册树模式UML图 暂无 (三)简单实例 注册树经常与单例模式一 阅读全文
posted @ 2018-03-06 19:14 jintaonote 阅读(176) 评论(0) 推荐(0)
摘要: 空对象模式(Null Object Pattern):用一个空对象取代 NULL,减少对实例的检查。这样的空对象可以在数据不可用的时候提供默认的行为 (一)为什么需要空对象模式 (二)空对象模式UML图 上图是Java的空对象模式UML图,网上很多PHP设计模式的代码实现都是照着上面这个UML图 实 阅读全文
posted @ 2018-03-06 18:25 jintaonote 阅读(163) 评论(0) 推荐(0)
摘要: 代理模式(Proxy Pattern):构建了透明置于两个不同对象之内的一个对象,从而能够截取或代理这两个对象间的通信或访问。 (一)为什么需要代理模式 1,远程代理,也就是为了一个对象在不同地址空间提供局部代表。隐藏一个对象存在于不同地址空间的事实。 2,虚拟代理,根据需要来创建开销很大的对象,通 阅读全文
posted @ 2018-03-06 18:19 jintaonote 阅读(347) 评论(0) 推荐(0)
摘要: 建造者模式(Builder Pattern):将一个复杂对象的构建与它的表示分离,使得同样的构建过程可以创建不同的表示。 建造者模式是一步一步创建一个复杂的对象,它允许用户只通过指定复杂对象的类型和内容就可以构建它们,用户不需要知道内部的具体构建细节。建造者模式属于对象创建型模式。根据中文翻译的不同 阅读全文
posted @ 2018-03-06 18:11 jintaonote 阅读(160) 评论(0) 推荐(0)
摘要: 工厂模式(Factor Pattern) 工厂模式(Factor Pattern) 工厂模式(Factor Pattern),就是负责生成其他对象的类或方法,也叫工厂方法模式 抽象工厂模式( Abstract Factor Pattern),可简单理解为工厂模式的升级版 (一)为什么需要工厂模式 1 阅读全文
posted @ 2018-03-06 17:58 jintaonote 阅读(171) 评论(0) 推荐(0)
摘要: 单例模式(Singleton Pattern) 单例模式(Singleton Pattern) 单例模式(Singleton Pattern):顾名思义,就是只有一个实例。作为对象的创建模式,单例模式确保某一个类只有一个实例,而且自行实例化并向整个系统提供这个实例。 (一)为什么要使用PHP单例模式 阅读全文
posted @ 2018-03-06 17:37 jintaonote 阅读(253) 评论(0) 推荐(0)
摘要: function quick_sort(array $arr){ $size=count($arr); if($size>1){ $k=$arr[0]; $x=array(); $y=array(); for($i=1;$i<$size;$i++){ if($arr[$i]<=$k){ $x[]=$ 阅读全文
posted @ 2018-03-06 17:31 jintaonote 阅读(147) 评论(0) 推荐(0)
上一页 1 ··· 4 5 6 7 8 9 下一页