简单的创建对象型工厂模式,目的是当有很多的初始化动作的时候,可以直接在工厂里搞,不用每次new都写一遍
工厂生成自行车
class SimpleFactory { public function createBicycle(): Bicycle { return new Bicycle(); } } class Bicycle { public function driveTo(string $destination) { } } $bicycle = (new SimpleFactory())->createBicycle();
区别:
简单工厂:一个工厂一个产品
工厂方法:一个总厂多个子厂生成产品
抽象工厂:一个总厂多个子厂生成多个产品