依赖项注入模式的代码合并


code consolidation for the dependency injection pattern

我在三个类中都有这个函数,因为它们都使用相同的对象。为了不在每个类中重复代码,我应该将其提取到父类中吗?如果这是一个偏好的问题,我愿意。

创建此函数是为了实现依赖项注入模式(在我看来,这是一个用词不当的词,因为它删除了依赖项)。

public function setObjects($DatabaseObject, $TextObject, $MessageObject)
{
    $this->DatabaseObject = $DatabaseObject;
    $this->TextObject = $TextObject;
    $this->MessageObject = $MessageObject;
}

是的,您应该始终尽可能创建DRY代码,因此如果它将应用于所有子类,请将其移动到父类,并在必要时让类重写。

此外,它被称为依赖项注入,因为您注入了依赖项,而不是在类中创建它。