作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有我的第一个使用事件溯源的 CQRS 项目,我想知道与其他涉及多层的项目相比,这种类型的项目是否应该在 Visual Studio 中以不同的方式构建?
例如,在过去创建的项目有诸如远程处理、应用程序服务、域等层,并且很明显每个层/程序集都触及了它下面的层。这些程序集似乎做了很多事情,使用像 NDepend 这样的工具确实对项目的结构说了很多。
但是,对于 CQRS 项目,最好只拥有显示其意图的较小程序集,即命令的程序集、事件的程序集、事件处理程序的程序集等。
现在有了 NDepend,它可以让我更好地表示如何使用程序集。
最佳答案
我通常使用描述其意图的较小项目来构建我的 CQRS 项目——命令、域、事件、非规范化器、存储库、命令服务等。
这样可以更轻松地浏览您的解决方案,也使您团队中的其他人(或新加入的团队成员)更容易使用您系统的各种组件。
此外,如果你有一个团队在做这件事,你可以很容易地让一个团队主要专注于领域项目(可能是你的高端团队成员),而你的初级成员可以在非规范化项目上工作。
你最终会得到(可能)更多的项目,但它们会更小,更容易理解它们的目的。有点像单一职责原则,但在项目级别。
希望这可以帮助。祝你好运。
关于visual-studio - CQRS/事件溯源项目结构,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9019088/
我是一名优秀的程序员,十分优秀!