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

[讨论] 你希望演示工程里体现哪些内容 #9

Open
funkygao opened this issue Oct 30, 2020 · 10 comments
Open

[讨论] 你希望演示工程里体现哪些内容 #9

funkygao opened this issue Oct 30, 2020 · 10 comments

Comments

@funkygao
Copy link
Contributor

funkygao commented Oct 30, 2020

感谢留下你的意见和建议!

@funkygao funkygao pinned this issue Oct 30, 2020
@carllhw
Copy link

carllhw commented Nov 10, 2020

IBaseTranslator,DDD分层模型的类型转换,DTO -> Creator -> Entity <-> PO.
看demo里的Entity只能通过Creator来创建,希望PO-> Entity能给示例
另外,最好提供两个查询的示例,简单查询和复杂的sql查询,这两个如何用DDDPlus来实现

@carllhw
Copy link

carllhw commented Nov 16, 2020

核心域调用库存支撑域的领域服务时,能有个复杂数据类型的对象传递,而不是简单的字符串,是不是也需要通过核心域model -> 支撑域Creator -> 支撑域Model -> rpc的dto?

@funkygao
Copy link
Contributor Author

核心域调用库存支撑域的领域服务时,能有个复杂数据类型的对象传递,而不是简单的字符串,是不是也需要通过核心域model -> 支撑域Creator -> 支撑域Model -> rpc的dto?

不需要,这属于shared kernel模式,直接使用domain model,不要DTO

@carllhw
Copy link

carllhw commented Nov 16, 2020

核心域调用库存支撑域的领域服务时,能有个复杂数据类型的对象传递,而不是简单的字符串,是不是也需要通过核心域model -> 支撑域Creator -> 支撑域Model -> rpc的dto?

不需要,这属于shared kernel模式,直接使用domain model,不要DTO

那domain model定义放到order-center-stock-domain里?但cp-oc-domain只依赖order-center-stock-spec

@carllhw
Copy link

carllhw commented Nov 16, 2020

如果在pattern里需要通过rpc来获取数据,并转换成核心域的model存储,但是pattern只能用spec的内容,没法使用model creator,这种要如何处理呢

@funkygao
Copy link
Contributor Author

核心域调用库存支撑域的领域服务时,能有个复杂数据类型的对象传递,而不是简单的字符串,是不是也需要通过核心域model -> 支撑域Creator -> 支撑域Model -> rpc的dto?

不需要,这属于shared kernel模式,直接使用domain model,不要DTO

那domain model定义放到order-center-stock-domain里?但cp-oc-domain只依赖order-center-stock-spec

4f50da7

改进了一下demo,看看这个commit能否回答你的疑问

@funkygao
Copy link
Contributor Author

如果在pattern里需要通过rpc来获取数据,并转换成核心域的model存储,但是pattern只能用spec的内容,没法使用model creator,这种要如何处理呢

pattern是不可能create model的,创建domain aggregate是在core domain里做的。pattern依赖spec,没有依赖domain,主要是想给扩展做些约束,不想直接暴露。这样中台的控制权大些,否则容易失控

pattern可能会创建vo,典型场景:数据补全。那就在spec层开放出对应补全的方法,以便pattern可以在RPC获取数据后,回补domain model数据

@carllhw
Copy link

carllhw commented Nov 17, 2020

如果在pattern里需要通过rpc来获取数据,并转换成核心域的model存储,但是pattern只能用spec的内容,没法使用model creator,这种要如何处理呢

pattern是不可能create model的,创建domain aggregate是在core domain里做的。pattern依赖spec,没有依赖domain,主要是想给扩展做些约束,不想直接暴露。这样中台的控制权大些,否则容易失控

pattern可能会创建vo,典型场景:数据补全。那就在spec层开放出对应补全的方法,以便pattern可以在RPC获取数据后,回补domain model数据

数据补全,spec层开放出补全的方法,可以在spec层用java bean来作为参数来传递到domain层吗

@funkygao
Copy link
Contributor Author

如果在pattern里需要通过rpc来获取数据,并转换成核心域的model存储,但是pattern只能用spec的内容,没法使用model creator,这种要如何处理呢

pattern是不可能create model的,创建domain aggregate是在core domain里做的。pattern依赖spec,没有依赖domain,主要是想给扩展做些约束,不想直接暴露。这样中台的控制权大些,否则容易失控
pattern可能会创建vo,典型场景:数据补全。那就在spec层开放出对应补全的方法,以便pattern可以在RPC获取数据后,回补domain model数据

数据补全,spec层开放出补全的方法,可以在spec层用java bean来作为参数来传递到domain层吗

sure,domain层是实现spec层的,领域模型的一致性和保护等由domain层控制

@ouzhrm
Copy link

ouzhrm commented May 25, 2021

自我认为,文档写的还是很乱,可以参考下开源项目如elasticsearch, mysql, redis这些文档格式。有些概念看不明白,有个名词解释更好。

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

No branches or pull requests

3 participants