PHP设计模式系列 - 工厂模式
2017-11-18 10:53
543 查看
工厂模式
提供获取某个对象实例的一个接口,同时使调用代码避免确定实例化基类的步骤。
工厂模式 实际上就是建立一个统一的类实例化的函数接口。统一调用,统一控制。
工厂模式是php项目开发中,最常用的设计模式,一般会配合单例模式一起使用,来加载php类库中的类。
应用场景
我们拥有一个Json类,String类,Xml类。
如果我们不使用工厂方式实例化这些类,则需要每一个类都需要new一遍,过程不可控,类多了,到处都是new的身影
引进工厂模式,通过工厂统一创建对象实例。
代码:
[php] view
plain copy
<?php
//工厂模式 提供获取某个对象实例的一个接口,同时使调用代码避免确定实例化基类的步骤
//字符串类
class String {
public function write() {}
}
//Json类
4000
class Json {
public function getJsonData() {}
}
//xml类
class Xml {
public function buildXml() {}
}
//工厂类
class Factory {
public static function create($class) {
return new $class;
}
}
Factory::create("Json"); //获取Json对象
提供获取某个对象实例的一个接口,同时使调用代码避免确定实例化基类的步骤。
工厂模式 实际上就是建立一个统一的类实例化的函数接口。统一调用,统一控制。
工厂模式是php项目开发中,最常用的设计模式,一般会配合单例模式一起使用,来加载php类库中的类。
应用场景
我们拥有一个Json类,String类,Xml类。
如果我们不使用工厂方式实例化这些类,则需要每一个类都需要new一遍,过程不可控,类多了,到处都是new的身影
引进工厂模式,通过工厂统一创建对象实例。
代码:
[php] view
plain copy
<?php
//工厂模式 提供获取某个对象实例的一个接口,同时使调用代码避免确定实例化基类的步骤
//字符串类
class String {
public function write() {}
}
//Json类
4000
class Json {
public function getJsonData() {}
}
//xml类
class Xml {
public function buildXml() {}
}
//工厂类
class Factory {
public static function create($class) {
return new $class;
}
}
Factory::create("Json"); //获取Json对象
相关文章推荐
- PHP设计模式-工厂系列(三)-抽象工厂模式
- PHP设计模式-工厂系列(二)-工厂方法模式
- PHP设计模式-工厂系列(一)-简单工厂模式(静态工厂模式)
- PHP设计模式系列:简单工厂模式
- php设计模式学习系列(三)工厂模式
- PHP设计模式系列 - 工厂模式
- PHP设计模式-工厂系列(三)-抽象工厂模式
- PHP设计模式系列 - 工厂模式
- PHP设计模式-工厂系列(一)-简单工厂模式(静态工厂模式)
- PHP设计模式-工厂系列(二)-工厂方法模式
- php的设计模式学习系列(二)简单工厂模式
- php基础设计模式 注册树模式、工厂模式、单列模式
- 【PHP设计模式】工厂模式
- API开发第二篇:PHP的设计模式之工厂模式
- PHP设计模式---工厂模式
- php设计模式-单例模式-工厂模式
- PHP设计模式一:工厂方法设计模式
- 1. PHP 设计模式---工厂模式
- php设计模式---工厂模式