Rad*_*dek 5 domain-driven-design value-objects
我有一个价值对象-金钱和ExchangeRatio。我想使用ExchangeRatio将一种货币转换为另一种。因此,在Value Object ExchangeRatio上构建转换行为是一件好事,如下所示:
ExchangeRatio.Convert(Money)返回钱。
还是应该将其委托给某些域服务?换句话说,我可以在不改变其状态但具有某种逻辑,数学或其他不同对象创建方式(基于其状态)的价值对象上构建行为吗?
你所做的事情对我来说听起来完全合理。Paint埃里克·埃文斯 (Eric Evans)在他的书中使用了一个具有相同功能的对象示例。该mixIn方法接受另一个Paint对象作为输入并返回一个新Paint对象。
Paint他通过示例演示了书中的无副作用函数。