在《深入浅出 DDD》这本小册中,高级基础架构研发工程师柏炎,从 0 到 1 带你落地实践自顶向下的业务驱动架构!
🎙️ 作者介绍
柏炎,高级基础架构研发工程师。 干过测试,写过业务系统,现在主要负责基础架构开发。
工作这些年,做过测试架构、MVC 的业务架构,当然也落地过 DDD 的六边形架构。
如果你问我是不是一个资深的技术大佬,那我肯定不是。我只不过是一个“摸着石头过河的瞎子”,但是也正因为如此,我在基础架构落地的路上经过了实战的考验,也经历了业务的打磨,希望能从更加贴合业务与实践的角度为大家提供架构落地思路,与大家共同成长。
🔥 为什么学习 DDD?
不知道你有没有一种这样的感觉,不管去哪家公司,只要你接触的项目是多人维护且存在了 2 年以上的,这个代码里面总有各种各样的“坏味道”。
俗称:“前人挖坑,后人填坑。” 你仔细想想,这是不是你开发需求的常规操作:先动手建立表结构,再针对表数据进行 CRUD 组装出功能点。那种“屎山”代码的特点就是:业务逻辑极其混乱,为了完成一个功能点,代码就是往上堆。
发现没有,你并不是从业务角度为起点去开发整个系统,而是以数据为起点去开发整个系统。数据库表又是一个很敏感的东西,不会动不动就大改表结构。那为了能够满足日益复杂的需求,你只能够加表、加字段、加 if/else 的逻辑嵌套。久而久之,你的代码就开始像积木搭建的房子,层层往上堆,如果其中有一块没搭好,可能瞬间就崩塌了。
那到底是什么原因导致了祖传代码的产生呢?
归根到底就是我们没有从业务出发自顶向下地去思考一个系统里面各个功能模块的职责与能力。
业务(领域)驱动设计,这就是 DDD。它的宗旨就是内聚与解耦,这也正是这本小册将为你输出的核心知识点。
🤔 为什么跟“我”学?
纵观网上关于 DDD 的资料或者 GitHub 上的开源项目,不是在疯狂堆叠 DDD 的基础概念,就是直接给你一个演示 Demo。稍微好点的,概念里面配几张图或者演示 Demo 里面多加点注释,总是缺少了一个推导的过程。
就像你妈打你,从不讲道理。现在有 DDD 这个东西,你就照着“我”这么搞就行。但,为什么这么搞?这么搞的好处是什么?……这样相关的内容少之又少。
- 我们本小册的行文采用
对比思路,从 MVC 三层架构或者我们习惯的开发模式出发,看看会存在什么样的问题,然后再逐步对比看如何使用 DDD 的内聚与解耦的思想来解决这些问题。 - 为什么大家对 DDD 都是听过、看过却不认识?那是因为概念没有对应到实际的代码中。因此,本小册在系统地为你分析和讲解完 DDD 的概念与理论之后,还会给出
实际的 Demo 讲解,进而让你彻底掌握 DDD 的核心思想与落地操作。 - 什么?MVC 系统迁移 DDD 成本太大,操作太麻烦?别担心!DDD 本身就是一个系统架构上的战略思想,完全按照其规范去开发系统只是它的战术目标,我们完全可以
选择其中好落地、好实现的部分去优化系统。
总之,学完这本小册,铲平“屎山”固然困难,但是给它掘掉点是完全没有问题的。
🏆 通过本小册你会学到什么?
以下就是本小册知识点的思维导图:
可以看到,小册整体的设置思路是这样的:
- 从使用 DDD 的原因出发,逐步为你讲解 DDD 的战略思想与战术实践;
- 理论结束之后,我将为你一步步讲解如何搭建 DDD 的项目,以及如何落地实践 DDD;
- 最后,再手把手指导你如何将系统从 MVC 架构迁移至 DDD 架构。
总之,不停留在理论层面,而是系统性地学习 DDD,从根上理解它、攻克它、落地它。
🤗 本小册的适宜人群
- 对 DDD 感兴趣,但是没有系统学习过的同学;
- 期望参与或者正在参与基础架构开发的同学;
- 饱受“屎山”代码困扰但又无从入手优化、只能往上堆 CRUD 代码的同学;
- 重度代码洁癖者。
期待你一起加入我们本小册的学习!从基础概念到落地实践,带你领略自顶向下的业务驱动架构,击碎老旧代码、复杂业务维护困难的噩梦。
🛒 如何购买本小册?
早鸟优惠限时 5 折,仅需 ¥14.95,赶紧👇点击下方图片或者扫描海报二维码👇,一起加入学习吧~