-3

我试图掌握洋葱架构的重要概念,并且在阅读一篇文章后问自己一个问题。查看此图像中显示的架构中的域:http ://tonysneed.files.wordpress.com/2011/10/onion-proj.jpg?w=282&h=494

将 Domain.Entities 和 Domain.Interfaces 分隔在两个单独的项目中而不是让一个 Domain 项目具有实体和 Interfaces 文件夹的实用性是什么?我不是很有经验,但我没有看到有人会感谢上帝他将域实体和域接口分开的场景..

4

2 回答 2

1

您获得图片链接的文章中已经介绍了三个非常好的理由:

  1. 可测试性。在该上下文中单元测试数据上下文操作。
  2. 可维护性。在不影响数据访问逻辑的情况下维护业务逻辑,反之亦然。
  3. 长寿。ORM 技术改进或死亡(ala Linq-to-SQL),您可以自由地将整个数据上下文换成新的,而不会对您的业务逻辑造成严重破坏。
于 2014-07-20T00:44:23.447 回答
1

怎么样才能将接口定义作为开源发布给客户端,而实现仍然是专有的。只是出于许多原因之一,这是可取的。

于 2014-07-20T00:46:57.097 回答