PHP通常被视为构建灵活和功能丰富的Web应用程序的基石。由于学习相对简单,因此初级编程人员能够方便地采用PHP从头开始创建应用程序。然而,考虑到这些应用程序的规模,其维护工作令人畏惧。幸运的是,成熟的编程社区已经提供了包括设计模式在内的一些解决方案。这些针对相同问题的可重复解决方案已在其他编程语言中应用了多年。《PHP设计模式》的目标是:通过将经过实践检验的设计模式应用于PHP应用程序,将PHP与早期的编程语言联系在一起。 《PHP设计模式》首先介绍了设计模式,讲述了设计模式的使用及重要性,并且详细说明了应用设计模式的场合。接下来,本书通过代码示例介绍了许多设计模式。最后,本书通过全面深入的案例分析说明了如何使用设计模式来计划新的应用程序,如何采用PHP语言编写这些模式,以及如何使用书中介绍的设计模式修正和重构已有的代码块。作者采用专业的、便于使用的格式来介绍相关的概念,自学成才的编程人员与经过更多正规培训的编程人员都会非常熟悉这种格式。
第Ⅰ部分 初识设计模式与PHP第1章 理解设计模式1.1 什么是设计模式1.1.1 一个普通的示例1.1.2 设计模式能够解决相同的问题1.1.3 设计模式无所不在1.1.4 设计模式的公共部分1.2 设计模式未涵盖的内容1.2.1 设计模式并非即插即用1.2.2 设计模式是可维护的,但并非总是最有效的1.2.3 设计模式是重构的必经之路,但不是最终目标1.3 设计模式的相关论证1.4 在PHP中使用设计模式的原因1.5 本章小结第2章 使用现有的工具2.1 已有架构中的模式2.1.1 PEAR.中的设计模式2.1.2 Zend Framework中的设计模式2.1.3 Doctrine中的设计模式2.2 PHP标准库2.2.1 SPL Observer.与SPL Subject2.2.2 SPL迭代器2.3 使用具有模式的Eclipse PDT2.4 本章小结第II部分参考内容第3章 适配器模式3.1 问题与解决方案3.2 UML3.3 代码示例第4章 建造者模式4.1 问题与解决方案4.2 UML4.3 代码示例第5章 数据访问对象模式5.1 问题与解决方案5.2 UML5.3 代码示例第6章 装饰器模式6.1 问题与解决方案6.2 UML6.3 代码示例第7章 委托模式7.1 问题与解决方案7.2 UML7.3 代码示例第8章 外观模式8.1 问题与解决方案8.2 UML8.3 代码示例第9章 工厂模式9.1 问题与解决方案9.2 UML9.3 代码示例第10章 解释器模式10.1 问题与解决方案10.2 UML10.3 代码示例第11章 迭代器模式11.1 问题与解决方案11.2 UML11.3 代码示例第12章 中介者模式12.1 问题与解决方案12.2 UML12.3 代码示例第13章 观察者模式13.1 问题与解决方案13.2 UML13.3 代码示例第14章 原型模式14.1 问题与解决方案14.2 UML14.3 代码示例第15章 代理模式15.1 问题与解决方案15.2 UML15.3 代码示例第16章 单元素模式16.1 问题与解决方案16.2 UML16.3 代码示例第17章 策略模式17.1 问题与解决方案17.2 UML17.3 代码示例第18章 模板模式18.1 问题与解决方案18.2 UML18.3 代码示例第19章 访问者模式19.1 问题与解决方案19.2 UML19.3 代码示例第III部分 PHP设计案例分析第20章 需求分析20.1 初始需求20.1.1 执行纲要20.1.2 作用域20.1.3 假设邝艮制20.1.4 详细需求20.2 初始需求分析20.2.1 大小/用户规模20.2.2 联系方式信息的类型20.2.3 应用程序访问20.2.4 联系方式同步20.2.5 用户证书20.3 最新需求文档20.3.1 执行纲要20.3.2 假设/限制20.3.3 详细需求20.4 对最新需求的讨论20.5 本章小结第21章 选择设计模式与计划21.1 设计核心21.2 设计用户交互21.2.1 身份验证和授权21.2.2 创建、编辑和删除用户21.2.3 提供对所有用户的管理访问21.3 设计联系方式管理21.3.1 处理联系方式与信息21.3.2 联系方式信息关系21.3.3 导入联系方式21.3.4 查看联系方式21.4 本章小结第22章 应用程序编程22.1 信息准备22.2 应用程序编程22.2.1 应用程序核心的编程22.2.2 用户交互与管理的编程22.2.3 联系方式管理的编程22.3 本章小结第23章 使用更多设计模式进行改进23.1 处理联系方式的导入23.1.1 Outlook联系方式适配器23.1.2 构建联系方式数组23.2 去除视图中的逻辑23.3 尽力实现设计模式23.3.1 设计模式和错误检查23.3.2 设计模式和联系方式管理23.3.3 设计模式和视图类型23.3.4 设计模式和删除对象23.3.5 分享您的设计模式完善工作23.4 本章小结