我正在学习依赖注入和控制反转,我觉得我开始明白了这是怎么工作的:
如果
- 类不应该关心自己依赖项的创建
- 依赖应该通过构造函数或设置器方法传递给对象
- DI容器可以创建带有所有所需依赖项的对象
$family->members()
,我可以快速访问所有家庭成员。但是,这意味着我的family
对象正在实例化family_member
类……这不会违反IoC的规则吗?如果
family_member
类具有超出family
类范围的依赖关系怎么办?非常感谢您的回答!<?php
class family
{
public $id;
public function members()
{
// Return an array of family_member objects
}
}
class family_member
{
public $family_id;
public $first_name;
public $last_name;
public $age;
}