我是 ddd 这方面的新手,入门快两年了,还是不明白里面的缘由。
所以在 v 站上面,寻找这方面知友,相互学习一下,有兴趣的留个 v 。
人多的话,可以创个群

包含战术设计,战略设计,不仅仅是代码实战,还有 uml ,架构设计啥的

领域驱动设计?

对的

d29vc3R1bmR5X3Njcm0K

1000 个开发就有 1000 种 DDD

都 2202 年了,还有人在琢磨这玩意。。。

这句话怎么解? 49 年入国?

不要太执着于 DDD ,这个模式都炒了 n 年了,现在还是一样没有什么标准,也没有看到真正强有说服力的工程实践

目前看了一点,最新的一点感受是,在 ddd 的指导下,一些日渐庞大的项目,后期拆分微服务会比较轻松。目前我们很多项目都大到本地编译超级慢,但是柔和依赖特别多,拆不动了

其实最难的是 uml ,uml 会了 ddd 就会了

今年上头非要整 ddd ,找了一个项目硬着头皮 ddd 去写。很烦,也很觉得没什么意义。也很难写的下去,各种概念。
但是中途我发现自己代码有问题,进行少量重构的时候,能感觉到如果不按 ddd 的思想去写,代码改动量很大。“领域专家”这个东西很重要。

是的 这个就劝退了很多初学者,如果领域分析 设计不到位 代码比普通的 crud 还烂

github.com/angular-architects/nx-ddd-plugin/blob/main/libs/ddd/README.md
www.angulararchitects.io/aktuelles/sustainable-angular-architectures-1/
非常不错的资源,可以研究一下

RnJvbUFyY2FkaWE=

1000 个开发就有 1000 种 DDD

前两年吹上天的微服务让 DDD 又火了把,其实不过是这十年互联网发展太快,留下的屎山代码太多,不得已开始搞重构,最终有的成功了,有的一地鸡毛。
DDD 是 04 年提出的东西,只是个抽象的思维方式,如今大多数项目都远比那个时代的复杂,只要能套,或多或少都用到了 DDD 。

最近 DDD 的入门资料挺多的,各种小册、书籍、视频撒的。不过和上面大佬们说的一样,每个人眼中的 DDD 都不同,目前我觉得可以看看 COLA 那一套吧。

最重要的是战略部分

UML 只是工具, 大学有个专门的课程, 不过只要求能看懂 UML 图,“行业专家” 基本不会是程序员出身, 开发要做的是“翻译、领会、吃透”行业专家的知识、经验, 最后把自己弄成所谓的领域专家。 没有行业专家,基本很难成“领域专家”. 个人理解

也不留个 t 。

公司新项目开始搞 DDD 了,但是写的实体类还基本都是贫血模型。

极客时间上有一门讲 DDD 的课,可以看一下

曾经疯狂沉迷过一段时间 DDD ,实践几次后发现这玩意根本就没什么最佳实践,就像是 雄安新区 一带一路 顶层设计 千年大计 宏大叙事的本质是一样的

既然 DDD 了,就别搞微信这么搓的交流工具了。IM 工具不适合技术性交流,要找社区交流工具。

个人一点拙见,DDD 最难的不是技术部分(战略设计也是技术部分),而是如何让需求跟开发形成通用语言。要是还用界面原型、效果图、甚至领导的想法来定义需求,那是用不成 DDD 的。最低的极限也得是拿数据库设计得概要模型或者逻辑模型当主要需求(界面原型只做辅助)。

DDD 的核心指导思想是:深入研究领域,消化知识,充分沟通,然后用软件模型对问题进行深刻的抽象,最终得到一个富含知识的领域模型。DDD 的实现不在于用何种方法,而是看最后是否得到了良好的深刻的领域模型。

个人有一些之前的思考和实践经验,给大家分享一下:

代码中的领域: brightliao.com/2019/08/08/domain-concept-in-your-code/
用 DDD 思想来编写 Pipeline: brightliao.com/2020/01/05/DDD-in-pipeline-code/

我来说一下 1/1000 DDD

  1. 问题领域识别: 明确你面对问题所在领域. 例如 你要完成一个用户登录功能. 那么 往大了说,这属于 "信息安全领域"
  2. 领域建模: 将这个领域中的处理模型搞清楚,并映射为对应的计算机语言设计,例如面向对象设计,将这个领域中的对象设计出来.

所以,起始最核心的是 "领域专家 " 这个角色,他有充分的专业知识和经验 能够给最初设计给出完整的领域知识的指导. 而程序员通常是计算机的"领域专家",并不是信息安全领域的,也不是 财务方面的,也不是仓库,物流,运营方面的. 如果领导让程序员去 DDD 本身就不是靠谱的事.

再退一步,其实实际工作中,"领域专家" 90% 情况下不存在.大家几乎都是自己岗位的熟练工而已....如果不信可以找公司会计问问,如果要开发一个 财务系统,希望他给你讲讲财务领域的知识,同时让他给设计建议,保证你最后实现了,也就你们公司能用. 根本达不到 财务领域 通用的程度.

请问主题是什么名字?

什么主题?