说明
这个也是工厂模式, 我们看过简单工厂, 简单工厂会让该工厂的职责越来越重。这里有个抽象工厂, 为了解决由于工厂方法模式中每个工厂只创建一类实例对象, 导致工厂类过多。...我们可以将具体类组成一个类别, 由一个工厂来产生, 这就是抽象工厂
定义
提供一个创建一系列相关或相互依赖对象的接口, 而无需指定他们具体的类
应用场景
程序需要处理不同系统的相关产品, 但是客户不需要依赖于这些产品的具体类..., 可以使用抽象工厂
示例
利用工厂模式 设计多个数据库操作,连接、命令发送等等 例如 mysql oracle...
<?...implements ICommand {
public function command()
{
echo 'mysql command';
}
}
/**
* 抽象工厂约束...就需要修改整体结构,使用抽象工厂 只需要提供各个实现即可 最后实现工厂即可,当然抽象工厂模式同样具有工厂模式对结构要求高的缺点,整体结构的扩展或精简将变得更加的烦杂,所以使用抽象工厂模式时,对等级结构的划分是非常重要的