LongMer
2018-10-11 08:17
Define an interface for creating an object,but let subclasses decide which class to instantiate.Factory Method lets a class defer instantiation to subclasses.(定义一个用于创建对象的 接口, 让子类决定实例化哪一个类。 工厂方法使一个类的实例化延迟到其子类。 ) 这是工厂模式的标准定义,不可否认老师的实力。但是这个地方真的讲解有问题,讲的不是工厂,算是简单工厂吧
按照你的意思,那可以改一改,把在createDatabase()里面传递一个类参数,譬如createDatabase(Database);顶部文件上面加上引入use App\Model\Database; 这样行不?
<?php use App\Model\Database; $db = IMooc\Factory()::createDatabase(Database); ?>
那么class Facrory里面的方法就是
function createDatabase($className){ $db = new $className; return $db; }
这个对不?
老师的应该算是一个简单的工厂模式
我看起来和多态差不多的 抽象 ,接口 最下面做个工厂类
大话PHP设计模式
62160 学习 · 230 问题
相似问题
回答 1
回答 1
回答 2
回答 2
回答 6