注 - 在这里我使用的术语“注射服务为实体”两个传递服务到构造或把它当作一个参数到方法
一)什么是处理和那些动作/操作这也被触发的区别域名操作,而是在域本身内处理?也许不同的是,前者(即处理,或者更准确地说他们行动)并不代表领域概念,而后者则代表领域概念?
B)
你不需要注入任何东西到你的域实体。
原因引入域事件是这样,我们就不必注入服务到域实体。但由于注入域服务DS到实体也不是非常理想,不能在这种情况下处理(即其行动)是域概念(即代替注射DS成一个实体,处理程序会打电话给这个DS)?
c)若确实处理也可以取代注射的DS到域实体,在那里也是在处理可以取代DS本身的情况呢?
d)
处理类不域模型中的归属。
做处理属于基础设施层?那些处理程序那叫DS?
UPDATE:
一个)
中心不同的是,一个域事件处理程序 事后调用。
但动作/操作由操作OP触发后的事实,也可能发生(这是我们处理域内,而不是内处理一)(即在OP完成后)。所以我们不能说这些两种类型的动作之间的主要区别在于A代表了域名概念,而那些动作由处理程序执行不代表域名概念?
B)只是可以肯定 - 所以会回答我原来的问题是,在某些情况下,而不是实体调用的DS的,我们可以有处理调用适当的DS?
C)
域事件可以消除的情况下需要域名服务,如 上述
所以回答C)的是,在某些情况下处理的确可以取代DS?但是如果是这样,我们不能争辩说,在这种情况下,处理程序(即它们的动作)是域概念?
d)
处理程序是不是真的你的域的一部分,因为他们做的是 授人以适当的基础设施服务或域名服务。 它们只是一种粘合剂,类似于应用程序服务。他们 仍然可以在域项目中声明,但通常他们不需要 。
一
处理程序是不是真的你的域的一部分,因为他们做的是 授人以适当的基础设施服务或域名服务。
只是可以肯定 - 我是“授人以”假设你的意思是不是实体调用适当DS或基础设施服务,我们委托调用特定服务到的工作处理程序?
二,
它们仍然可以在域项目中声明,但通常它们不需要是 。
正如你在C)指出,在某些情况下处理可以代替DS本身(即它们不叫DS,但实际上是由执行所需的操作他们自己 )。在这种情况下,我们是否可以认为处理程序是域概念并且同样属于域层?
第二次更新:
d - II
正如你在C所示),在某些情况下,处理器可以替代DS本身( 即它们不叫DS ,但实际上自己执行所需的操作 )。在这种情况下,我们不能认为处理程序是域概念,并且属于域层吗?
在这些情况下,我会说处理程序有两个职责 - 接线事件和执行操作。配线 部分不是域的概念,但操作本身是。
a)那么在这些情况下处理程序会违反SRP?
B)
布线部分不是域的概念,但操作本身 是。
如果在这种情况下处理投入领域层?
2) 假设行动一个返回值,我们应该如何决定它是否是更好地执行一个注入(注意 - 我在这里使用的术语“注射服务成针对传递服务到构造或把它当作的参数的方法)服务的实体“小号(这反过来执行甲)转换成实体或使用域事件代替(这反过来会调用方法上小号)?
也许决定取决于一些域代码是否需要的一个结果进行一些进一步处理?
域名事件是您的域中发生的其他系统可能感兴趣的有趣事情。您只需要某种方式将这些事件公开给其他系统。您*可以*在您的域中使用它们,但这不是它们的主要目的。 – 2013-02-14 05:39:58
@Eben Roux:所以域事件的主要目的是只通知其他系统发生在域内的有趣事情? – user437291 2013-02-14 16:31:39
这是正确的。它可能不是唯一的责任,但肯定是主要的。域服务可能可以处理的应该能够很好地处理您的域概念/任务。 – 2013-02-14 17:56:26