Domain driven design 如何使用强类型语言使用域驱动设计执行HTTP修补程序?

Domain driven design 如何使用强类型语言使用域驱动设计执行HTTP修补程序?,domain-driven-design,Domain Driven Design,如何在DDD应用程序中使用强类型语言(如Java或C#)按照JSON补丁规范执行HTTP补丁。条件是不违反DDD,所有东西都是强类型的,实体是不可变的 RFC6902的意图与DDD方法不太兼容。此RFC用于定义用于在CRUD样式中对对象进行变异的协议,而不是DDD样式DDD关注使用泛在语言的业务行为,而CRUD关注数据 如果确实需要,可以将RFC6902用于应用程序的命令端(也称为写端)。每个补丁请求将映射到一个或多个命令,这些命令将被发送到由请求的URL标识的单个聚合。此外,只有add操作才有

如何在DDD应用程序中使用强类型语言(如Java或C#)按照JSON补丁规范执行HTTP补丁。条件是不违反DDD,所有东西都是强类型的,实体是不可变的

RFC6902的意图与
DDD
方法不太兼容。此
RFC
用于定义用于在
CRUD
样式中对对象进行变异的协议,而不是
DDD
样式
DDD
关注使用泛在语言的业务行为,而CRUD关注数据

如果确实需要,可以将
RFC6902
用于应用程序的命令端(也称为写端)。每个
补丁
请求将映射到一个或多个命令,这些命令将被发送到由请求的
URL
标识的单个聚合。此外,只有
add
操作才有意义,如
添加并处理新命令
。对于某些命令,
remove
操作可能有意义,但这更奇怪

因此,请求可以如下所示:

PATCH /orders/1234/change/item/quantity HTTP/1.1
Host: example.org
Content-Length: 326
Content-Type: application/json-patch+json

[
   { "op": "add", "path": "/item/456", "value": 3 }
]
此请求将
订单中
id为
项目
数量设置为
3
等于
456
,id为
等于
123


我重复一遍,
RFC6902
DDD

没有意义,我也这么认为,但由于我对DDD相当陌生,在互联网上找不到任何参考资料,我想我会问。谢谢:)