简介

这是一组已知的 设计模式 和一些在 PHP 中实现它们的示例代码。 每个模式都有一个例子列表(其中大多数来自 Zend Framework,Symfony2 或 Doctrine2,因为我最熟悉这些软件)。

我认为设计模式方面的问题是人们通常知道他们,但不知道何时应用这些模式。

模式

这些模式可以分为三个大类。

1. 创建型

在软件工程中,创建型设计模式是处理对象创建机制的设计模式,试图以适当的方式来创建对象。对象创建的基本形式可能会带来设计问题,亦或增加了设计的复杂度。创建型设计模式通过控制这个对象的创建方式来解决此问题。

2. 结构型

在软件工程中,结构型设计模式是通过识别实体之间关系来简化设计的设计模式。

3. 行为型

在软件工程中,行为设计模式是识别对象之间的通用通信模式并实现这些模式的设计模式。 通过这样做,这些模式增加了执行此通信的灵活性。