基础架构库是否应该松散地耦合到另一个基础架构层?

时间:2013-05-11 01:56:51

标签: domain-driven-design infrastructure loose-coupling

是否有任何气味与说File.IO库松散地耦合到日志库有关?或者应该将它们分开并仅在应用程序服务中合并?

2 个答案:

答案 0 :(得分:1)

松散耦合在所有情况下都是有益的,但您也应该意识到它可能引入的额外复杂性。如果您应用依赖性倒置原则(阅读Robert C. Martin关于Agile Principles的书籍以获得精彩的讨论),您可以考虑使用File.IO库来定义它需要的抽象(例如接口)用于记录。然后,您可以使用首选的日志记录库提供该抽象的实现。要清楚,这与使用File.IO库中的日志库提供的抽象不同。然后你仍然会把它们锁在一起。

答案 1 :(得分:1)

松散耦合是没有高内聚力的无意义的术语。在您的域中,您可以登录特定于域的条款。看看Isaiah Perumalla的博客,特别是测试驱动设计使用模拟