PHP设计模式笔记:使用PHP实现原型模式 【意图】 用原型实例指定创建对象的种类,并且通过拷贝这些原型创建新的对象 【原型模式结构图】 【原型模式中主要角色】 抽象原型(Prototype)角色:声明一个克隆自身的接口 具体原型(Concrete Prototype)角色:实现一个克隆自身的操作 【原型模式的优点和缺点】 Prototype模式优点: 1、…
PHP设计模式笔记:使用PHP实现门面模式 【意图】 为子系统中的一组接口提供一个一致的界面,Facade模式定义了一个高层次的接口,使得子系统更加容易使用【GOF95】 外部与子系统的通信是通过一个门面(Facade)对象进行。 【门面模式结构图】 [caption id="attachment_770" align="aligncenter" width…
Scrum敏捷项目管理读书笔记 由于最近的工作从开发转到了项目管理,所以需要了解一些项目管理的知识。 然后去公司的图书馆借了这本《Scrum敏捷项目管理》,并花了一周的工作之余的时间把它看完了。 总体觉得书有较多的案例,对一些知识点的解释比较到位,也容易理解。只是在工作中用不太到,因为整个公司的项目管理环境是CMMI,最多在本部门小范围的实施一些带点敏捷思想…
PHP设计模式笔记:使用PHP实现单例模式 【意图】 保证一个类仅有一个实例,并且提供一个访问它的全局访问点【GOF95】 单例模式有三个特点: 1、一个类只有一个实例 2、它必须自行创建这个实例 3、必须自行向整个系统提供这个实例 【单例模式结构图】 [caption id="attachment_741" align="aligncenter" widt…
PHP设计模式笔记:使用PHP实现桥梁模式 【意图】 将抽象部分与它的实现部分分享,使它们都可以独立的变化【GOF95】 【桥梁模式结构图】 [caption id="attachment_736" align="aligncenter" width="588" caption="桥梁模式"] [/caption] 【桥梁模式中主要角色】 抽象化(Abstr…
PHP设计模式笔记:使用PHP实现装饰模式 【意图】 动态的给一个对象添加一些额外的职责。就增加功能来说,Decorator模式相比生成子类更为灵活【GOF95】 装饰模式是以对客户透明的方式动态地给一个对象附加上更多的职责。这也就是说,客户端并不会觉得对象在装饰前和装饰后有什么不同。装饰模式可以在不使用创造更多子类的情况下,将对象的功能加以扩展。 【装饰模…
PHP设计模式笔记:使用PHP实现抽象工厂模式 抽象工厂模式(Abstact Factory)是一种常见的软件设计模式。该模式为一个产品族提供了统一的创建接口。当需要这个产品族的某一系列的时候,可以为此系列的产品族创建一个具体的工厂类。 【意图】 抽象工厂模式提供一个创建一系统相关或相互依赖对象的接口,而无需指定它们具体的类【GOF95】 【抽象工厂模式结构…
PHP中的设计模式笔记:建造者模式 【Builder模式】 建造者模式可以让一个产品的内部表象和和产品的生产过程分离开,从而可以生成具有不同内部表象的产品。 【Builder模式结构图】 [caption id="attachment_716" align="aligncenter" width="400" caption="Builder模式简单示例图"]…