考虑到领域驱动设计,基础设施或系统可以使用域的对象(值、实体等),还是应该应用依赖反转,以便基础设施只依赖于自己定义的接口?
那仓库呢?同样适用吗?
它是否违反了基础设施、存储库或系统代码,取决于域?
(A)基础设施依赖于域的示例代码:
namespace Infrastrcuture {
public class Sender {
public void Send (Domain.DataValue data) { ... }
}
}(B)基础设施不依赖于领域的示例代码:
namespace Infrastrcuture {
public interface ISendableData {
...
}
public class Sender {
public void Send (ISendableData data) { ... }
}
}发布于 2016-03-10 22:07:19
一般来说,如果您的基础设施依赖于您的域,这是可以的。相反,这不是一个好主意。
你可以这样想:什么东西在某个时候更有可能被取代?基础设施还是领域?
基础设施将随着时间的推移而变化(不同的提供者、不同的服务器、.)另一方面,你的域名将永远存在。
https://stackoverflow.com/questions/35928177
复制相似问题