我不确定如何应用工厂模式。
如果我以这段代码为例:
class Car
{
protected $_engine;
protected $_frame;
protected $_wheels;
public function __construct($engine,$frame,$wheels)
{
$this->_engine = $engine;
$this->_frame = $frame;
$this->_wheels = $wheels;
}
}
class Engine
{
protected $_hp;
public function __construct($hp)
{
$this->_hp = $hp;
}
}
class Frame
{
protected $_type;
protected $_length;
public function __construct($type,$length)
{
$this->_type = $type;
$this->_length = $length;
}
}
class Wheels
{
protected $_diameter;
public function __construct($diameter)
{
$this->_diameter = $diameter;
}
}
class CarFactory
{
// ???
}
工厂应该如何制造汽车的所有零件?每个零件都需要工厂吗?如果是这样,CarFactory 是如何知道它们的?IOC、DI 和工厂模式的组合让我感到困惑,应该在哪里启动任何事情或任何事情。我看到了他们所有人的好处(我认为)。
依赖注入如何在这里发挥作用?每个部分都可以是它自己的对象,但为了简单起见,我暂时将其省略了。
希望我的问题足够清楚。
提前致谢!