很多站长朋友们都不太清楚php单列工厂模式,今天小编就来给大家整理php单列工厂模式,希望对各位有所帮助,具体内容如下:
本文目录一览: 1、 谁能解释一下PHP的工厂模式? 2、 什么是PHP中的工厂设计模式 3、 php设计模式中工厂模式和单例模式的区别 谁能解释一下PHP的工厂模式?工厂模式是程序设计模式的一种。
一般是在某个基础类上创建一个静态方法,根据参数来生成某个子类。这个方法,称为工厂方法。
类比到现实,就像一个工厂,包含几种产品,会根据客户的订单需求生产出指定的产品供客户使用。
最简单的用法:
class Pizza{
public $price;
public static function factory($type)
{
if($type=='veget'){
return new VegetPizza();
}elseif($type=='fruit'){
return new FruitPizza();
}
}
}
class VegetPizze extends Pizza{
}
class FruitPizze extends Pizza{
}
大概逻辑是这样的,具体实现上有好几种写法,你可以搜索设计模式深入了解一五
什么是PHP中的工厂设计模式工厂模式分为三种:简单工厂、工厂方法、抽象工厂 ,三种工厂的区别是,抽象工厂由多条产品线,而工厂方法只有一条产品线,是抽象工厂的简化。而工厂方法和简单工厂相对,大家初看起来好像工厂方法增加了许多代码但是实现的功能和简单工厂一样。但本质是,简单工厂并未严格遵循设计模式的开闭原则,当需要增加新产品时也需要修改工厂代码。但是工厂方法则严格遵守开闭原则,模式只负责抽象工厂接口,具体工厂交给客户去扩展。在分工时,核心工程师负责抽象工厂和抽象产品的定义,业务工程师负责具体工厂和具体产品的实现。只要抽象层设计的好,框架就是非常稳定的。
php设计模式中工厂模式和单例模式的区别工厂模式使用时,返回的对象之间没有关系。单例模式返回始终是同一个对象。可以在代码的定义明显的区分出来,单例模式的构造函数 一般是私有的,不允许实例化,通过内部静态方法实例化自己,同类型的对象始终返回同一个。
关于php单列工厂模式的介绍到此就结束了,不知道本篇文章是否对您有帮助呢?如果你还想了解更多此类信息,记得收藏关注本站,我们会不定期更新哦。
查看更多关于php单列工厂模式 php工厂模式和单例模式区别的详细内容...