php中的设计模式之--抽象工厂模式
2015-01-08 14:04
211 查看
抽象工厂模式
其与工厂方法模式的区别在于抽象工厂是先创建工厂,然后工厂在创建商品(实例);
定义一个创建对象的接口,让子类决定哪个类实例化。 他可以解决简单工厂模式中的封闭开放原则问题;
其与工厂方法模式的区别在于抽象工厂是先创建工厂,然后工厂在创建商品(实例);
定义一个创建对象的接口,让子类决定哪个类实例化。 他可以解决简单工厂模式中的封闭开放原则问题;
// 产品(数据库)标准 interface DbInterface{ public function connect(Array $params=array()); public function query($sql); public function insert($table, $record); public function update($table, $record, $where); public function delete($table, $where); } // 具体产品(Mysql) class MysqlDb implements DbInterface(){ public function connect(Array $params=array()); public function query($sql){} public function insert($table, $record){} public function update($table, $record, $where){} public function delete($table, $where){} } class OracalDb implements DbInterface(){ public function connect(Array $params=array()){} public function query($sql){} public function insert($table, $record){} public function update($table, $record, $where){} public function delete($table, $where){} } // 构造工厂 interface CreateFactory(){ function createDB(); //分为 内敛的和外向的 } class FactoryMysql implements CreateFactory{ function createDB() { return new MysqlDb(); } } class FactoryOracle implements CreateFactory{ function createDB() { return new OracalDb(); } } (1) 如果想使用mysql $db = new FactoryMysql()->createDB(); //
相关文章推荐
- PHP设计模式-工厂系列(三)-抽象工厂模式
- php实现设计模式之 抽象工厂模式
- 抽象工厂模式 - 设计模式 - PHP版
- PHP设计模式3-抽象工厂模式
- 【设计模式】抽象工厂模式(二)- PHP
- PHP和golang实现设计模式-抽象工厂模式
- PHP设计模式(三)抽象工厂模式(Abstract Factory For PHP)
- php设计模式 — 抽象工厂模式
- php设计模式学习系列(四)--抽象工厂模式
- php设计模式——抽象工厂模式(Abstract Factory)
- PHP实现设计模式中的抽象工厂模式详解
- 用星际学习PHP设计模式3-抽象工厂模式[转]
- PHP实现设计模式中的抽象工厂模式详解
- 学习php设计模式 php实现抽象工厂模式
- PHP设计模式系列(十):抽象工厂模式
- PHP设计模式-抽象工厂模式(Abstract Factory For PHP)
- php设计模式 抽象工厂模式
- php设计模式之抽象工厂模式
- 5. 星际争霸之php设计模式--抽象工厂模式
- PHP设计模式-工厂系列(三)-抽象工厂模式