领域驱动设计--小需求的疑问。望大神帮忙。
目前需求:1.用户可以关注店铺
2.店铺每天都有动态信息推送到系统中
3.用户可以查看最新动态(当然是自己关注店铺的动态列表)
其他的需求不继续详细说明。
我根据需求画了usercase 概括了需求内容。
我的分析的实体如下:
存在的问题:
1.用户进来之后要看自己关注过的店铺动态,因为动态是属于店铺实体的。那这样的话,关注-->店铺-->动态,按照这种方式来查询数据了。貌似有些不拖。因为动态数据多的话需要分页。
如何将 关注 和 动态 比较好的建立关系? 或者这部分数据是需要通过领域之外的方式来查询处理?
2.一直存在的困惑,就是持久化操作,比如说这个需求里面 的店铺有动态,那么我的店铺可以增加个动作来删除动态,那这操作之后数据持久化怎么做?领域操作的对象难道要在自己的领域方法里面直接调用持久化的 respository么?还是通过消息通知方式来做?如果消息通知的方式来做持久化操作,那如果保证事务完整性。