Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

关于仓储设计的一些疑问 #4

Open
xdqsgit opened this issue Apr 21, 2020 · 2 comments
Open

关于仓储设计的一些疑问 #4

xdqsgit opened this issue Apr 21, 2020 · 2 comments

Comments

@xdqsgit
Copy link

xdqsgit commented Apr 21, 2020

先说下我目前对仓储的理解
仓储目的是隔离业务和 持久化操作的部分,减少因为ORM组件的变换导致的一些修改
ddd的理论建议 聚合根 才能使用仓储
问题来了
如果是只有聚合根才能使用仓储,
我需要操作根上的实体的时候怎么实现呢?
这一点我比较疑惑,一直也没找到可以参考的实现,请老师指点下🙂

@witskeeper
Copy link
Owner

通过聚合根的id获取到聚合对象,然后操作聚合根的实体

@huangchangmingxinghui
Copy link

聚合根设计的指导原则是设计得尽可能小,即引用的对象(无论是实体还是值对象)要少,以完成业务要求的不变条件为基准。聚合根里的对象,外部是不能直接引用操作的,更别说随意从数据库加载了,要加载也必须通过聚合根加载,并调用聚合根提供的方法完成业务逻辑,聚合根会调用内部的对象完成处理,以继续保持业务上的不变条件。

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants