如何切换案例值对象

时间:2018-04-03 21:27:47

标签: php domain-driven-design

想象一下,你有一个Value Object只允许一组值。简单来说就是想象它是一个字符串。

我想切换一个从我的实体中提取的值对象。为此,我必须创建我要检查的所有ValueObject,并针对我从实体获得的Value Object创建equals。但这不是一个很好的解决方案:

在构造函数中:

$this->topupEvent = new VOEventType(VOEventType::EVENT_TYPE_TOPUP);
$this->invoicingEvent = new VOEventType(VOEventType::EVENT_TYPE_INVOICING);

然后在接收值对象的某个方法中:

if ($eventType->equals($this->invoicingEvent)) {
    //do something
}

if ($eventType->equals($this->topupEvent)) {
    //do something
}

我不喜欢我必须创建Value Objects的事实。在价值对象方面,最佳做法是什么?我正在考虑将isTopupEvent之类的方法添加到我的Value Object中。

0 个答案:

没有答案