V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
• 请不要在回答技术问题时复制粘贴 AI 生成的内容
lbllol365
V2EX  ›  程序员

请教 DDD 对于单 Service 接口的多实现处理问题

  •  
  •   lbllol365 · 2023-01-02 17:59:35 +08:00 via iPhone · 2111 次点击
    这是一个创建于 720 天前的主题,其中的信息可能已经有所发展或是发生改变。

    在看极客时间的《设计模式之美》,看到 12:实战一个虚拟钱包。

    想到一个问题:贫血模型的一个 Service 接口的多个实现类,业务逻辑是在实现类里的。而 DDD 是把业务逻辑抽到了 domain 里,那这多个实现类都要抽一套 domain 出来?然后这些 domain 抽一个抽象类或者父类出来?

    3 条回复    2023-01-03 10:21:55 +08:00
    Muzhijiao
        1
    Muzhijiao  
       2023-01-02 21:38:28 +08:00 via Android   ❤️ 1
    对的,这个抽象类还是 domain
    thinkershare
        2
    thinkershare  
       2023-01-03 01:31:52 +08:00   ❤️ 3
    DDD 并不是将业务逻辑都抽象到 Domain 里面,只是将 Domain 业务逻辑和 Application 业务逻辑做了分离. 另外 DDD 只是为了让 OO 回到他本来的面目罢了, 和他对应的是事务脚本. DDD 那套规则核心还是从聚合根出发的事务一致性规则. 其它方面应用的都是常用的面向对象设计的经典模式.
    litchinn
        3
    litchinn  
       2023-01-03 10:21:55 +08:00   ❤️ 1
    楼上说的非常好了,针对`让 OO 回到他本来的面目`做一点具体化的补充,`多个实现类都要抽一套 domain 出来`,除了继承实现还有包含成员变量的形式,这个完全看实际的业务定义,木工和钳工都会用锤子敲,这是因为他们都是工人呢,还是因为他们工具里都有锤子呢
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   928 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 25ms · UTC 19:34 · PVG 03:34 · LAX 11:34 · JFK 14:34
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.