Redian新闻
>
DDD落地难?三个迭代带你由入门到进阶|极客时间

DDD落地难?三个迭代带你由入门到进阶|极客时间

公众号新闻

正文开始之前,我先问你一个问题:对于 DDD(Domain Driven Design),你的第一反应是什么?

对于这个玩意,我最早接触的时候觉得太高深了,有点把握不住,云里雾里的感觉。但是随着自己一点点深入的了解,其实发现这玩意其实“不过如此”,DDD 并不是一种新技术名称,应用框架之类的东西,而是一种比较好的业务重构的思想、一种独具特色的架构风格。事实上,作为软件开发方法学层面的 DDD,并不仅仅局限于像微服务这样特定的架构风格,而是在企业数字化转型中有着广泛的应用。目前各大公司也纷纷在核心业务中落地 DDD,例如京东物流、阿里零售、美团等等。

虽然 DDD 在这几年越来越流行,但不少人对 DDD 的基本概念、核心技能还不能充分地掌握,从而影响了 DDD 的学习和落地。至于到底要不要学 DDD,我们可以问问 Chatgpt:

DDD 到底是什么?

DDD,也就是“领域驱动设计”,是一种开发复杂软件的系统化的方法学和思想。它继承了面向对象和敏捷方法的精华,并提炼了一套更容易掌握的原则、模式和实践,特别适合复杂的企业应用的开发。

一方面,数字化时代为软件开发带来了新的挑战。如何实现业技融合,如何应对复杂多变的需求,如何防止架构和代码的腐化等问题,需要新的解决办法。而 DDD 正是顺应了时代的要求,日益普及起来

另一方面,优秀的工程师,尤其是想挑战架构师角色的同学,DDD 更是必修内容。这点在很多大厂招聘要求上也能看到,毕竟大厂软件更复杂,需求变化快,而且代码工程的规模也更大,这些都需要你深入了解和实践过 DDD。

那么,怎样跨越学习 DDD 的门槛,扫清落地 DDD 的障碍呢?虽说难点不少,但是你也大可不必担心。DDD 的学习还是有方法,有诀窍的。我们需要的是一套既有理论高度,又顾及实践细节;既能深入复杂概念,又符合认知规律的学习方法。

这里给大家分享一张钟敬梳理的「DDD 学习知识地图」,内容出自于《手把手教你落地 DDD》专栏,你可以跟着这个“套路“建模型、写代码,拾级而上,循序渐进地掌握 DDD:

本课程适合对 DDD 感兴趣的初级和中级开发人员,尤其是已经学习过 DDD 的一些基础知识,但仍然觉得有些概念不太清楚,或落地有困难的伙伴。对产品经理、领域专家也有参考价值。

再跟大家聊聊「钟敬」

钟敬目前在 Thoughtworks 公司担任首席咨询师,也是数字化转型与运营团队的 DDD 交付负责人

作为一名在 IT 界奋斗了二十多年的老兵,他先后在中国人寿、友邦资讯、Thoughtworks 等公司任职。目前的主要工作是为企业提供软件开发方法学、架构设计、工程效能提升等方面的帮助。业余时间还翻译了 Martin Fowler 的《分析模式:可复用的对象模型》,审校了《领域特定语言》、《DDD 十五年》等书籍。

这些年,随着数字化转型的浪潮,他带领团队为多家企业,在几十个项目里引入了 DDD,解决了很多实际的痛点和问题。在这个过程中,他总结了一套行之有效的学习和落地 DDD 的方法,并且尝试着把这些知识经验传授给更多的人。

他希望通过这些努力,可以让更多人了解和使用 DDD,为你的职业生涯开辟更多的可能性。

所以,他跟极客时间合作推出了《手把手教你落地 DDD》专栏。可以说,他对 DDD 的建模、架构和落地的各方面知识和技能都了如指掌,这种资历的大佬能出来开课,把自己独特的方法和经验共享出来,真的很难得。

如果你也想建立 DDD 完整的知识图景,掌握 DDD 最核心的技能,不要错过这个专栏。

三个迭代,带你真正掌握 DDD

为了帮你和你的团队顺利掌握和落地 DDD,解决领域建模不好掌握、领域模型难以实现、概念混乱等痛点问题,本课程将以一个企业管理系统案例为导向,模拟敏捷开发过程,带你体验系统开发的三个迭代。每个迭代的需求规模逐渐扩大,复杂性逐渐增加,相应也会让你不断学习新的 DDD 模式和实践,同时深化已学过的 DDD 技能。

迭代一:打通 DDD 的最小闭环

主要会带你夯实基础,实现一个“麻雀虽小、五脏俱全”的项目。打通从需求分析,到领域建模,再到架构设计,最后到数据库和代码实现的完整闭环。学完这个迭代,你就有能力处理一些不太复杂的项目了。

迭代二:聚合、值对象和泛化

深入讲解 DDD 里几个争议较大,不太好掌握的内容,包括聚合、值对象等。同时,进一步带你提升领域建模能力,深化对分层架构和代码封装的理解。最后,还会学习重要的建模技巧 -- 泛化,这是领域建模由初级走向中、高级的关键技能。学完这个部分,相信你就会有渐入佳境的感觉了。

迭代三:进阶建模、架构和落地技能

重点讲解限界上下文、事件驱动和 CQRS 等模式,带你深入讨论怎样为更加灵活多变的业务建模,帮你深化对泛化的理解。还会讲到实践落地的关键要点,比如 DDD 切入点的选择,遗留系统的改造等等。学完这个部分,你将掌握更高阶的 DDD 技能,了解如何应对更大范围的项目。

课程基本上都基于“问题 - 方案”的模式。即首先由需求引发要解决的问题,然后找到解决问题的知识点,并进行讲解。每个知识点都有具体的建模或编码实现来说明,避免空谈理论。在最后一个迭代,他还会专门讲讲如何解决落地时常见的具体疑难问题。说了这么多,我们通过目录来看看具体内容吧:

当然,我一个人说好也不算,在专栏交流群和评论区,很多朋友都表示物有所值:

再强调一遍

课程原价 ¥129

今日秒杀 + 礼券 ,到手 ¥79!

如果你是新用户,只需要 ¥59!

最后,再分享一句话,DDD 不仅是一门技术,更是一门艺术。而你既然想学习 DDD,恐怕也不仅仅是为了应付某个具体的问题,而是多少带着一些“情怀”来的。你可能想要了解,几十年来,那些研究软件开发方法学的大师们,到底总结出了怎样的经验;也可能希望发扬“工匠精神”,成为一个技艺卓越的软件开发者。

那么,就请点击阅读原文,一起开启 DDD 的探索之旅吧。

微信扫码关注该文公众号作者

戳这里提交新闻线索和高质量文章给我们。
相关阅读
Linux运维必知必会的Go语言核心知识,找齐了 | 极客时间中国人的苦日子和英国人的苦日子。司巧蕾:培养数字人才,助力企业数字化业务价值实现 | 极客时间企业版ArgoAI破产、特斯拉FSD落地,凛冬将至or腾飞在即?这么判断!2022年Java资料总结!没到35k的Java开发都值得好好读一读 | 极客时间不欠用 5 年血淋淋的 Java 经验,排出了 100 颗雷... | 极客时间黎舒苇10.26.2022在面试中如何巧妙的展现架构能力?附200道面试真题+100例经典架构案例拆解 | 极客时间美国西南部美墨边境的沙漠国家公园行(4)大弯国家公园-东西两侧的旖旎风光如何快速构建Prometheus监控体系,架构、指标、数据、告警… | 极客时间想吃透监控系统,看这个就够了 | 极客时间SAT是个种族主义的考试吗?30 岁熬到管理层,下属却早早下班回了家 | 极客时间全球自动驾驶规模化落地难?运营服务有望提供新解决方案华润雪花郭华:每一个人都不简单,每一瓶酒才放光彩 | 极客时间企业版Rust:香是真的香,不同学习者却各有各的难​ | 极客时间时隔 20 年,C++ 又杀回来了!| 极客时间面对996,耗子叔也是很刚了 | 极客时间还是第一次见这么画架构图的,果然是阿里 P9 | 极客时间被哈佛、布朗录取的学霸同款「竞赛资料」揭秘!带你从入门到金牌大厂面试最喜欢考察Golang的哪些能力?这篇说全了 | 极客时间前阿里巴巴 P9 实践总结:如何画好架构图?| 极客时间从JVM虚拟机到多线程,手撸Java开发面试必备技术栈 | 极客时间有人骂DDD、有人爱DDD,我们讲道理 | 极客时间用Prometheus监控K8s,从核心原理到告警实操都讲明白了 | 极客时间从全球半导体十大买家,看中国的就业机会 | 极客时间逆生长!躺着瘦!费城明星医美团队,助你由内而外自然变美,制霸2022圣诞新年Party投行进阶|​小摩、瑞信投行部大佬兼校招官带你搞定高阶知识点,卷赢对手!FlinkSQL 必知必会的核心知识点,整齐了 | 极客时间阿汤男神导师Joey Miles带你深入熬汤,以新视角「友好入门|稳定进阶」月薪 5w+,2023 懂点 K8s/Docker 真的太有必要了!| 极客时间手把手带你用 Go语言实现一个Web框架 | 极客时间4点精要:如何从架构图开始让架构设计平滑落地 | 极客时间汇总了近一年高频考点,这份Java资料通用性极强 | 极客时间
logo
联系我们隐私协议©2024 redian.news
Redian新闻
Redian.news刊载任何文章,不代表同意其说法或描述,仅为提供更多信息,也不构成任何建议。文章信息的合法性及真实性由其作者负责,与Redian.news及其运营公司无关。欢迎投稿,如发现稿件侵权,或作者不愿在本网发表文章,请版权拥有者通知本网处理。