0%

简介

PHP设计模式(七):设计模式分类

中我们提到过创建设计模式(Creation
patterns),创建设计模式专注于设计对象(Object)和实例(Instance)的创建过程。
创建设计模式包括下面五种设计模式:

  1. 抽象工厂设计模式(Abstract Factory)

  2. 生成器模式(Builder)

  3. 工厂设计模式(Factory Method)

  4. 原型设计模式(Prototype Method)

  5. 单例设计模式(Singleton)

当程序逐渐扩展的时候,需要更多的新对象,新对象的创建不应该依赖于创建者,换句话说,新对象的创建过程,不应该依赖调用创建函数的对象。为了减少冗余,增加拓展性,工厂模式就是一种创建新对象时使用的设计模式。

阅读全文 »

简介

PHP设计模式(八):工厂模式中我们介绍了创建设计模式(Creation
patterns)中的工厂模式,下面我们将介绍另一种原型设计模式(Prototype Method)。
在PHP中,原型设计模式依靠cloning复制对象来实现。通过cloning构造的对象,将大量节省新对象的构造时间。

阅读全文 »

组合模式


组合模式将对象组合成树形结构,以表示“部分-整体”的层次结构。除了用来表示树形结构之外,组合模式的另一个好处是通过对象的多态性表现,使得用户对单个对象和组合对象的使用具有一致性。

阅读全文 »

命令模式是最简单和优雅的模式之一,命令模式中的命令指的是一个执行某些特定事情的指令。命令模式最常见的应用场景是:有时候需要向某些对象发送请求,但是不知道请求的接收者是谁,也不知道被请求的操作是什么。此时希望用一种松耦合的方式来设计程序,使得请求发送者和请求接收者能够消除彼此之间的耦合关系。

阅读全文 »


享元模式的核心是运用共享技术来有效支持大量细粒度的对象。如果系统中因为创建了大量类似的对象而导致内存占用过高,享元模式就非常有用了。在JavaScript中,浏览器特别是移动端的浏览器分配的内存不算多,如何节省内存就成了一件非常有意义的事。

初识

假设有个内衣工厂,要50个男模50个女模,你可能会这么写程序:

阅读全文 »