中介者模式用于开发一个对象,这个对象能够在类似对象相互之间不直接相互的情况下传送或者调解对这些对象的集合的修改。 一般处理具有类似属性,需要保持同步的非耦合对象时,最佳的做法就是中介者模式。PHP中不是特别常用的设计模式。 ...
分类:
Web程序 时间:
2018-06-26 00:54:10
阅读次数:
143
代理模式(Proxy)为其他对象提供一种代理以控制对这个对象的访问。使用代理模式创建代理对象,让代理对象控制目标对象的访问(目标对象可以是远程的对象、创建开销大的对象或需要安全控制的对象),并且可以在不改变目标对象的情况下添加一些额外的功能。 在某些情况下,一个客户不想或者不能直接引用另一个对象,而 ...
分类:
Web程序 时间:
2018-06-26 00:46:45
阅读次数:
177
备忘录模式又叫做快照模式(Snapshot)或 Token 模式,备忘录模式的用意是在不破坏封装性的前提下,捕获一个对象的内部状态,并在该对象之外保存这个状态,这样就可以在合适的时候将该对象恢复到原先保存的状态。 我们在编程的时候,经常需要保存对象的中间状态,当需要的时候,可以恢复到这个状态。比如, ...
分类:
Web程序 时间:
2018-06-26 00:42:29
阅读次数:
200
策略模式主要为了让客户类能够更好地使用某些算法而不需要知道其具体的实现。 ...
分类:
Web程序 时间:
2018-06-26 00:42:21
阅读次数:
170
装饰器模式允许我们根据运行时不同的情景动态地为某个对象调用前后添加不同的行 ...
分类:
Web程序 时间:
2018-06-25 22:53:08
阅读次数:
212
有些情况下我们需要根据不同的选择逻辑提供不同的构造工厂,而对于多个工厂而言需要一个统一的抽象工厂: ...
分类:
Web程序 时间:
2018-06-25 22:52:37
阅读次数:
212
组合模式(Composite Pattern)有时候又叫做部分-整体模式,用于将对象组合成树形结构以表示“部分-整体”的层次关系。组合模式使得用户对单个对象和组合对象的使用具有一致性。 常见使用场景:如树形菜单、文件夹菜单、部门组织架构图等。 ...
分类:
Web程序 时间:
2018-06-25 22:50:46
阅读次数:
211
有时候,部分对象需要被初始化多次。而特别是在如果初始化需要耗费大量时间与资源的时候进行预初始化并且存储下这些对象,就会用到原型模式: ...
分类:
Web程序 时间:
2018-06-25 22:49:50
阅读次数:
196
将抽象部分与它的实现部分分离,使他们都可以独立的变抽象与它的实现分离,即抽象类和它的派生类用来实现自己的对象 桥接与适配器模式的关系(适配器模式上面已讲解): 桥接属于聚合关系,两者关联 但不继承 适配器属于组合关系,适配者需要继承源 聚合关系:A对象可以包含B对象 但B对象不是A对象的一部分 ...
分类:
Web程序 时间:
2018-06-25 22:48:45
阅读次数:
224
Singleton(单例模式):单例模式是最常见的模式之一,在Web应用的开发中,常常用于允许在运行时为某个特定的类创建仅有一个可访问的实例。 在很多情况下,需要为系统中的多个类创建单例的构造方式,这样,可以建立一个通用的抽象父工厂方法: ...
分类:
Web程序 时间:
2018-06-25 22:47:49
阅读次数:
227