我按照六边形架构编写系统。
我在UseCase中分割了异步命令和同步查询对象。
我的src文件夹如下:
-src
--Entity
---Task.php
--UseCase
---Command
----CreateTask
-----CreateTaskUseCase.php
-----CreateTaskCommand.php
我的问题是:我可以/应该使用什么来通过UseCase\Command\CreateTask\CreateTaskCommand
\Entity\Task
UseCase\Command\CreateTask\Request\Task
这是显示问题的简单示例。
现在我正在使用Domain(Entiti\Task
等)中的对象
在实际情况中,我需要UseCase\Command\CreateProcess
通过关注DDD,Process是我的聚合。所有实体仅存在于构造过程(节点,叶,资源,人)。然后我不想要单独的方式来创建其他实体,因为这种方式符合我的业务逻辑。
由于这个问题,问题是:我应该选择什么?打破一些规则?
问题:
Request\*
让我有很多类,但是使用清晰的命令方式,以及更多的工作 - unitTest等。感谢您的帮助。
答案 0 :(得分:1)
经过一段时间和经验 - 最好的选择是使用PHP的标准数据。最终,最好为该Command创建对象(第二个选项),但这将花费时间来创建类和测试。
永远不要使用域中的东西 - 这是将来的巨大缺点。