PHP 设计模式
2017-02-26 11:09:20 1 举报
AI智能生成
PHP设计模式是一种面向对象编程的通用解决方案,用于解决在特定场景下重复出现的问题。它提供了一套经过验证的最佳实践,帮助开发人员更高效、更优雅地编写代码。PHP设计模式包括创建型、结构型和行为型三种类型,每种类型都有多个具体的模式。例如,单例模式确保一个类只有一个实例,工厂模式用于创建对象,适配器模式用于兼容不同接口等。通过使用这些设计模式,开发人员可以降低代码复杂度、提高可维护性和可扩展性,从而更好地应对不断变化的需求。
作者其他创作
大纲/内容
单例模式
避免创建过多的数据库连接
注册树模式
初始化时先把所有对象注册在一个数组中
数据对象映射模式
原型模式
构造原型去克隆
代理模式
适配器模式
类适配器
对象适配器
工厂模式
避免直接new对象
策略模式
观察者模式
迭代器模式
面向对象六大原则
单一职责原则
一个类应该仅有一个引起它变化的原因
依赖倒置原则
依赖注入,尽量在类体中依赖另一个类,而是外部注入依赖
接口隔离原则
使用多个单独的接口比使用一个接口好的多
迪米特法则
一个对象应该对其他对象保持最少的了解
开放封闭原则
对扩张开放,对修改关闭
里氏代换原则
不可重写父类方法,不要破坏类的继承体系
PHP设计模式
创建型
简单工厂模式(非23种设计模式之一)
实质:工厂类根据传入到参数动态决定应该创建哪一个产品类
职责:
工厂角色
抽象产品角色
具体产品角色
优势:避免了对象的使用者和对象的实现类以硬编码的方式耦合
缺陷:由于是通过传入参数确定创建的产品类,所以产品的修改或者增加,工厂角色也要修改,违反了开放封闭原则
工厂方法
职责
抽象工厂角色
具体工厂角色
抽象产品角色
具体产品角色
优势:克服了简单工厂违背了开放封闭的原则
缺陷:每增加一个产品,就要增加一个工厂,额外增大了开发量
抽象工厂模式
需要常见的对象是一系列相关联或相互依赖的产品族时(点套餐而不是单点食物)
单例模式
保证系统中一个类只有一个实例或对象,并容易被外界访问
生成器模式(建造者模式)
角色
产品角色(定义自身的组成属性)
抽象建造者(定义产品的创建过程以及如何返回一个产品)
具体建造者
指挥者
负责与调用客户端进行交互,决定创建什么样的产品
将一个复杂对象的构造和他的表示分离
原型模式
多用于创建复杂或耗时的实例
结构型
适配器模式
将一个类的接口适配成用户所期待的
角色
待适配角色
内部接口角色
适配器角色
桥接模式
将抽象部分与它的实现部分分离,使他们可以独立的变化
角色
抽象化角色
修正抽象化角色
实现化角色
具体实现化角色
组合器模式
角色
抽奖结构角色
叶子节点角色
枝节点
优化处理递归或分级数据结构
装饰器模式
在不必改变原类文件和使用继承的情况下,动态的扩展一个对象的功能
角色
逐渐对象的接口
所有装饰器的父类
具体的装饰器类
门面模式
享元模式
代理模式
行为型
命令模式
解释器模式
迭代器模式
中介者模式
备忘录模式
观察者模式
状态模式
策略模式
模版模式
访问者模式
职责链模式
姜海强博客地址:http://blog.csdn.net/jhq0113
0 条评论
下一页