首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >DDD (领域驱动设计)-用例可以返回实体实例吗?

DDD (领域驱动设计)-用例可以返回实体实例吗?
EN

Stack Overflow用户
提问于 2020-03-18 07:12:23
回答 1查看 612关注 0票数 1

用例可以返回实体实例吗?

因此,我是在问,我看不到其他选择。

我正在为DDD + Clean Architecture重写一个MVC应用程序。

例如:

代码语言:javascript
复制
function createUserUseCase (name: string): User {
    // Instantiate `User` Aggregate Root.
    const user = new User.create(name)

    // Store new user using the repository.
    UserRepository.store(user)

    return user
}
代码语言:javascript
复制
class UserController {
    public async post (request: Request, response: Response): Promise<Response> {
        // Return `User` instance.
        return await response.json(createUserUseCase(request.body.name))
    }
}
EN

回答 1

Stack Overflow用户

发布于 2020-03-24 22:12:25

我认为这里最大的违规是返回域模型。看起来你有漏洞。关于DDD原则,您的域不能暴露在外部。

我想,您应该创建一些DTO模型,该模型将能够仅公开来自用户聚合的必要数据。

此外,我还建议在这里实现CQRS模式,以便区分读和写……

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/60731466

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档