gjkv86
V2EX  ›  问与答

请问 DDD(领域驱动设计)真的火了?

  •  
  •   gjkv86 · Dec 11, 2020 · 6066 views
    This topic created in 1972 days ago, the information mentioned may be changed or developed.

    今年感觉到好多公司,好多人都在谈论 DDD,甚至有的已经按着 DDD 可以帮助拆分微服务的思路在实践了。 我个人很疑惑。DDD 是 2004 年就出书了,当年其实还有 MDA 的概念。好像也一直没有火起来。随着互联网的兴起,连早先的 RUP 那一套感觉都没人提了一样。

    当前 DDD 这种火热程度是仅限于国内吗? 大家都在用什么样的方法论做设计,指导开发呢?

    我觉得方法论必须得有大公司站台,给出工具和理论各方面的落地支持才可能推广开来,否则,就想现在有些搞 ddd 培训的,一举例子 value object 就那地址说事,真不知道这是皇帝的新装还是他们真弄明白了。

    24 replies    2020-12-11 18:06:38 +08:00
    airfling
        1
    airfling  
       Dec 11, 2020   ❤️ 2
    ddd 没有个好的领域模型设计师把关是不行的,不然最后就是开发出来个四不像。还有微服务不是大到一定程度的应用不建议拆分,还不如 all in one 开发简单,维护方便。前期各个服务设计好接口和分层,后期应用大起来了还是非常好分的
    sampeng
        2
    sampeng  
       Dec 11, 2020 via iPhone   ❤️ 1
    刷简历难道不香么
    hq136234303
        3
    hq136234303  
       Dec 11, 2020
    个人觉得 没大到一定的公司 一定的业务 用这个开发得不偿失。而且没人把关 最终也会越来越乱。
    passerbytiny
        4
    passerbytiny  
       Dec 11, 2020 via Android
    ddd 不是产品,也不是设计体系,就没有“火”的概念。
    passerbytiny
        5
    passerbytiny  
       Dec 11, 2020 via Android   ❤️ 1
    DDD 只是一种设计理念,就像敏捷开发那样,不但没实践工具,连可抄写的理论都没有。敏捷开发搞了三十来年了,也才勉强弄了 Strum 、KanBan 等勉强能培训(只能像 CMMI 那样做指导性的培训,培训班干不了)的理论体系。而 DDD 从出生到现在,也就实体、值对象这些浅显的概念能够上教程,稍微深入一点的聚合、域、限界上下文等,需要耳提面命,再深入一些(但仍然是基础使用要求)的事件、集成,那就非学术课程而不可教。

    上面这种情况,直接导致 DDD 无法被推广,但背地里一直有人(大公司)在用。类似的概念还有:完全面向对象编程,或者说强类型限定。
    wangkun025
        6
    wangkun025  
       Dec 11, 2020
    没火。
    ChoateYao
        7
    ChoateYao  
       Dec 11, 2020
    DDD 是应用系统层面的东西跟重构这本书一样,都是为了更好的拆分代码管理代码,微服务只是借鉴里面的核心理念,如何把相同业务逻辑的代码划分到一起。
    maemual
        8
    maemual  
       Dec 11, 2020
    有上千个微服务之后再考虑这种东西吧。。。
    securityCoding
        9
    securityCoding  
       Dec 11, 2020
    火个鸡毛,前后经历过 5 个架构师要推 ddd,说起来一套一套的,给你定个包分层就谢天谢地了,你让他写代码他也抓瞎,有个卵用 .
    DDD,微服务本质上都是为了降低复杂度
    gmywq0392
        10
    gmywq0392  
       Dec 11, 2020
    落地上效率不如三层架构。
    而且这不仅需要一个人的能力,需要的是一个团队都有这样的意识。
    wdpscqq
        11
    wdpscqq  
       Dec 11, 2020
    方法论 抓手 赋能
    dddd1919
        12
    dddd1919  
       Dec 11, 2020   ❤️ 1
    相当于是技术人面向老板画饼的一个新技巧,不然天天以为都在那 CRUD 呢
    lukaz
        13
    lukaz  
       Dec 11, 2020 via Android
    DDD 的关键在于领域的划分,跟业务有很大的关系。现实中的很多业务本身就是高度耦合的,很难划分出清晰的领域边界。所以 DDD 这个东西不能说好不好,而是要看合不合适。
    rioshikelong121
        14
    rioshikelong121  
       Dec 11, 2020
    DDD 实践起来太难了。
    min
        15
    min  
       Dec 11, 2020
    落地对团队要求高,ddd 挂嘴边的绝大多数都是吹。
    sadfQED2
        16
    sadfQED2  
       Dec 11, 2020 via Android
    目前手上一个项目正在用,大致 100 人左右的开发团队。架构师对外说的是 ddd 能够带来人员与工时的线性提升,比如 100 人年的项目,使用 ddd 能够达到 100 人一年完成。

    But,参与后发现,纯属扯淡,根本达不到。但是最近学了各种名词,比如聚合,域,界限等等,ppt 写出来真的是把领导忽悠得一愣一愣的
    itechify
        17
    itechify  
    PRO
       Dec 11, 2020 via Android   ❤️ 1
    @sadfQED2 #16 抓手 赋能 闭环 数智 方法论 势能 私域流量 粘性 打法 感知 对齐🐶 老阿里了
    coderxy
        18
    coderxy  
       Dec 11, 2020
    DDD 是一种思想,跟 MVC 一样给人一套基本规范。 然后公司要有人基于 DDD 的基本规范给出公司项目的基本规范,大家都一起按照规范去做就行了。 有瑕疵的统一比百万齐放要好。
    liudaolunhuibl
        19
    liudaolunhuibl  
       Dec 11, 2020
    年底了,不炒火一些概念,年终述职怎么搞?年终总结 PPT 上写什么?还涨不涨薪了还要不要年终奖了
    USAA
        20
    USAA  
       Dec 11, 2020   ❤️ 1
    谢了,楼上各位,等明儿早上班研究研究这个玩意,年终 ppt 就靠这个了
    ISSSSSSS
        21
    ISSSSSSS  
       Dec 11, 2020
    这玩意真正实施的时候难的一 P,就没见过有实施成功了的。多数是公司中高层用来吹牛逼和刷 PTT 用的。
    gjkv86
        22
    gjkv86  
    OP
       Dec 11, 2020 via iPhone
    现在所在公司也在推 DDD 过段时间跟大家汇报效果 现在感觉完全不报什么希望。因为感觉外面来请来的这些讲师也讲不清楚,实践肯定就更难了。
    feeeei
        23
    feeeei  
       Dec 11, 2020
    @airfling #1 即使有了,还是很难推开。 需要让同组的人都能理解并严格落实,这个很难,很有可能写着写着又变味了
    ZRS
        24
    ZRS  
       Dec 11, 2020 via iPhone
    要有能匹配的业务体量,还得有专家坐镇
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   3131 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 94ms · UTC 00:37 · PVG 08:37 · LAX 17:37 · JFK 20:37
    ♥ Do have faith in what you're doing.