我们正在为一个全新的domain model
(和Bounded Context
)“ Appointment
”创建一个新的应用程序。我们选择为我们的新域结合CQS
(Hexagonal Architecture
使用端口和适配器)。
我们的包结构主要是这样的:
.appointments
.application
.command
.representation
- AppointmentScheduleApplicationService.java
- AppointmentScheduleQueryService.java
.domain.model
.port.adapter
.integration
.persistence
.web
.service
- AppointmentScheduleFacade.java
我的问题:
- 这个包结构是否适合我们想要实现的目标?
我们希望通过该
AppointmentScheduleFacade
接口查看与其他域之间的每一次通信。跨域通信以普通方法调用(没有 RPC 或 REST)的形式存在,因为它们不是分布式的。门面主要代表:
AppointmentScheduleApplicationService.java
用于模型修改AppointmentScheduleQueryService.java
用于将数据传递到其他域。
这个设置好吗?或者其他域是否应该直接与Application
and对应QueryService
?