架构解码:模式与实践

软件架构与模式
帅旋
关注
充电
IT宅站长,技术博主,共享单车手,全网id:arthinking。

DDD会干掉微服务吗?

发布于 2021-08-15 | 更新于 2024-03-01

image-20210816002928294

“这业务逻辑真奇怪,先上线再说” 两个月后:“这垃圾代码谁写的,谁看的懂?”

为什么要在标题上面标明是干货呢?因为要特别强调下,本文不是广告,就是一篇从入门到上手的DDD教程,让你一看就懂,一学就会。

这篇文章已经写了有一段时间了,一直没发,原因是在尝试落地方案,看看这个DDD是不是真的那么好用,毕竟理论与实际落地之间可能会存在很大的鸿沟的。直到我最近用上瘾了,于是我毫不犹豫的分享给大家了。

你是否会遇到这样的困境:

  • 接手过来的项目跑起来了,但是研究了几天,仍旧不知道它是如何工作的;
  • 项目用了合理的技术框架,也用到了很多设计模式, 并且是使用敏捷流程开发的,但是引入新功能是在太困难了;
  • 跟领域专家、产品们沟通用的是一套专业术语,但是打开项目代码翻看,发现又是另一套术语,甚至我们一个命名为“支付”的方法里面,竟然发现了用优惠券、上架新商品的奇怪逻辑;
  • 项目里面的Service代码几千行,一大把重复代码,每修复一个bug,都可能因为漏修改好几个地方而导致出现新的问题…

DDD就是用于解决此类问题的一种软件设计思想。通过使用DDD,添加新功能将变得更加容易,DDD强制设计人员、开发人员和领域专家一起工作来理解领域概念、策略和逻辑,让开发人员更深入地了解问题领域,好让生产出来的的软件更容易适应未来的发展。而不是通过巧合编程把业务逻辑堆叠在一起,导致出现各种奇奇怪怪的bug…

image-20210816001427087

经常有人会问:DDD会干掉微服务吗?请大家不要想太多了,微服务就是在DDD思潮背景下而发展而来的,新的技术是不可能突然就凭空冒出来干掉旧技术的,况且DDD在微服务出现之前就已经诞生了。

这两年,DDD这个概念极其火爆,本文我就带大家一探究竟。

References

本文作者: 帅旋

本文链接: https://www.itzhai.com/columns/architecture/domain-driven-design/from-entry-to-practice.html

版权声明: 版权归作者所有,未经许可不得转载,侵权必究!联系作者请加公众号。

×
IT宅

关注公众号及时获取网站内容更新。