Mah*_*eri 9 domain-driven-design onion-architecture
我正在使用洋葱架构和域驱动设计开发控制台应用程序.我有两个域,我需要实现日志记录,我很困惑我可以放置日志记录组件.我可以将它放在两个域的相应基础架构中吗?或者在共享内核中可以在两个域中引用?如果我需要将它放在共享内核中我应该遵循的结构是什么?我的意思是核心,基础设施.
日志记录跨所有应用程序。那应该是你框架的一部分。所有应用程序项目的所有层都可以依赖于您的框架,就像它们依赖于 .Net Framework、Spring 等一样。您的框架必须具有可以轻松依赖的横切关注点的抽象,并且然后只需在基础设施中的应用程序的组合根中引用该实现即可。
小智 5
记录是一个贯穿各领域的问题.面向方面的编程旨在将横切关注点纳入方面.这样可以实现清晰的隔离和代码重用,从而解决交叉问题.
您需要创建一个图书馆和实现你的日志类,像"MyProject.CrossCutting.Logging",并登录使用这个库的事件使用面向方面的方法.

小智 5
如果您遵循 DDD 和洋葱架构,那么您拥有多少个域并不重要。如果需要,每个域都可以实现自己的记录器版本。很可能,您将创建一个日志记录接口,并可能创建一个保存在公共层中的静态实现,可以由任何需要它的层调用。在之前分享的图片中,它会保留在Cross-Cutting Layer中。如前所述,日志记录是所有层都关心的问题。
| 归档时间: |
|
| 查看次数: |
3659 次 |
| 最近记录: |