您是否为域模型中的每个公共类定义了一个接口?优点和缺点?

Sta*_*low 4 c# dependencies interface loose-coupling

您是否为域模型中的每个公共类实现了一个接口?优点和缺点?

更新:如果存储库接口和域模型类在单独的程序集中定义,如果我们不为每个域类定义接口,则不会存在循环依赖关系.

Mik*_*liy 13

没有.

缺点.

  1. 噪音代码.
  2. 更多写.
  3. YAGNI.


Mat*_*ggs 7

您应该为层之间的依赖关系定义接口,而不是为每个类定义.因此,您的服务层应该依赖于存储库接口,并且您的表示层应该依赖于服务接口.过去,没有很多硬性和快速的规则,其他的则在有意义的地方使用它们.

常识是任何好设计的一个很好的部分.