领域驱动之无状态操作

前端之家收集整理的这篇文章主要介绍了领域驱动之无状态操作前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

这段时间一直在看DDD的东西,对domain层说到:

domain service领域服务里是无状态stateless的操作

所有的状态stateful应该都在聚合根aggregate里

一个经典的带状态的类/服务是一个可以增加近商品的购物车。带状态的服务方法是这样的:

  • createCart
  • addArticleToCart(quantity,articleid)
  • removeArticleFromCart(quantity,articleid)
  • ....

这个有状态的购物车服务有责任来记住它的cartID。

如果要使这个类/服务变成无状态化,你在调用方法时必须提供所有所有需要的参数:

  • createCart returns a cartID
  • addArticleToCart(cartID,quantity,articleid)
  • removeArticleFromCart(cartID,articleid)

无状态的cartService在每次调用时都不需要保持任何状态,每次都返回了它的cartID

猜你在找的设计模式相关文章