php 设计模式的理解
来源:互联网 发布:网络影视拍摄许可证 编辑:程序博客网 时间:2024/05/19 14:16
1.单例模式
就是定义一个静态的方法 ,单例模式确保某一个类只有一个实例,而且自行实例化并向整个系统全局地提供这个实例。它不会创建实例副本,而是会向单例类内部存储的实例返回一个引用。这个方法不能去new() ,失去单例模式的意义
、
单例模式的特点
单例模式的主要特点是“三私一公”:
需要一个保存类的唯一实例的私有静态成员变量
构造函数必须声明为私有的,防止外部程序new一个对象从而失去单例的意义
克隆函数必须声明为私有的,防止对象被克隆
必须提供一个访问这个实例的公共静态方法(通常命名为getInstance),从而返回唯一实例的一个引用
2.工厂模式
PHP工厂模式分为:简单工厂模式、工厂方法模式和抽象工厂模式
定义个抽象的类,让子类去继承实现它 比如:‘乘方’,‘开方’,‘对数’,‘三角函数’,‘统计’等,以还可以避免加载没有必要的代码。abstract class Operation{
//抽象方法不能包含函数体
abstract public function getValue($num1,$num2);//强烈要求子类必须实现该功能函数
}
工厂模式:
以交通工具为例子:要求请既可以定制交通工具,又可以定制交通工具生产的过程
1>定制交通工具
1.定义一个接口,里面包含交工工具的方法(启动 运行 停止)
2.让飞机,汽车等类去实现他们
2> 定制工厂(通上类似)
1.定义一个接口,里面包含交工工具的制造方法(启动 运行 停止)
2.分别写制造飞机,汽车的工厂类去继承实现这个接口
观察者模式属于行为模式,是定义对象间的一种一对多的依赖关系,以便当一个对象的状态发生改变时,所有依 赖于它的对象都得到通知并自动刷新。它完美的将观察者对象和被观察者对象分离。可以在独立的对象(主体)中维护一个对主体感兴趣的依赖项(观察器)列表。 让所有观察器各自实现公共的 Observer 接口,以取消主体和依赖性对象之间的直接依赖关系。(反正我看不明白)
4.策略模式
在此模式中,算法是从复杂类提取的,因而可以方便地替换。例如,如果要更改搜索引擎中排列页的方法,则策略模式是一个不错的选择。思考一下搜索引擎的几个部分 —— 一部分遍历页面,一部分对每页排列,另一部分基于排列的结果排序。在复杂的示例中,这些部分都在同一个类中。通过使用策略模式,您可将排列部分放入另一个类中,以便更改页排列的方式,而不影响搜索引擎的其余代码。
- php 设计模式的理解
- PHP设计模式理解
- PHP耦合设计模式的理解
- 个人对于PHP设计模式之工厂模式的理解
- php设计模式自我理解
- 关于PHP设计模式的分析和理解
- 设计模式的理解
- 设计模式的理解
- 设计模式的理解
- 设计模式的理解
- 设计模式的理解
- 设计模式的理解
- php的设计模式
- php的设计模式
- php的设计模式
- 第一篇 理解PHP设计模式
- 我理解的设计模式
- 关于设计模式的理解
- PLSQL乱码
- 华师大 OJ 1147
- VFS之mnt命名空间
- android中无法在华为手机输出Log.v和Log.d级别的日志问题总结
- axure 7.0正式版发布(附下载地址和汉化包)
- php 设计模式的理解
- linux 使用yum是提示如下错误
- GoogLeNet计算过程
- MySQL服务无法启动(2003
- PopupWindow(下)
- VFS之目录项操作
- 如何在 Linux 上录制你的终端操作
- centOS目录结构详细版
- 有趣的NP完全问题