序 三
——王立[1]
自2003年Eric Evans的著作《领域驱动设计》面世以来,领域驱动设计(DDD)相关的实践书籍并不多,整体的理论发展速度并不快,以至于很长一段时间,开发团队的实践过程总是磕磕绊绊,这让他们觉得领域驱动设计的门槛很高,甚至有人怀疑领域驱动设计是否是一种足够成熟与体系化的方法论。根据我个人的经验,我确实发现其中不少问题仍旧没有什么经典论著能完全覆盖与讨论。看过这本书的内容后,我的感受是:无论是理论还是实践,领域驱动设计知识体系确实都已经成熟了,与国内外的经典领域驱动设计著作相比,这本书包含了更多案例,覆盖了更多问题场景,回答了更多人们不常考虑的细节。本书作者不仅继承了各类经典著作的精华,更难得的是他能够在实践中深入细节进行推敲,批判与改良一些不成熟的理论,甚至有了自己的理论创新,例如,提出了菱形架构概念、对强一致事务与聚合的边界的一致性提出挑战……特别是,他还创造性地提出了领域驱动设计统一过程(DDDUP),很好地总结了完整的领域驱动设计知识体系。
有些读者可能不理解本书为什么这么厚。网络上有大量碎片式的领域驱动设计文章,一个案例只有几页,市场上也有不少领域驱动设计方面的培训,两天就能帮我们“搞定”领域驱动设计,领域驱动设计的知识体系似乎并没有我们想象的那么丰满。但事实上,这本书将告诉我们,领域驱动设计背后完整的知识体系并没有那么简单,我们需要掌握的是从业务到技术的整个技能栈。我们必须接受的事实是:领域驱动设计是有一定学习曲线的。所以,不要拒绝一本足够厚的书,这恰恰是其价值的体现。这本书的各个部分不是泛泛而谈,而是通过展开细节,层层推进,帮助读者建立扎实的理论基础,并通过大量翔实的案例,让读者能灵活运用理论知识。对于初学者,本书尽可能详尽地把问题展开、讲透;对于有一定经验的老手,本书也有更多有深度的细节思考和理论拓展。相信这本书会成为国内领域驱动设计技术书籍的一个标杆。
张逸先生是我国最早一批接触并实践领域驱动设计的先行者,经验极其丰富。本书不仅是他在该领域十多年实战经验的沉淀和升华,也是他多年教学经验的总结和提炼。他曾经为很多行业巨头提供过咨询服务,是国内在领域驱动设计方面影响力最大的布道者之一。看到张逸先生的书终于要出版了,我感到非常高兴,我们太需要这样一本既有理论升华又如此接地气的大作了。
我熟读了几乎所有的领域驱动设计经典著作,但仍旧从张逸先生的书中获益良多。我认为本书的广度、深度与创新性已经可以与该领域的国际经典著作看齐,这也是国人的骄傲。本书的出版是领域驱动设计理论界的一个重要事件,是对软件行业在领域驱动设计方面的巨大贡献,必将降低整个行业掌握领域驱动设计的门槛,加速领域驱动设计的普及。能为这本书作序是我的荣幸,同为领域驱动设计布道者,我将向我的同行强烈推荐本书。这本书也是我本人将来开展工作的重要理论指导。
[1] 王立,微信支付12级专家工程师、技术领导者。他从2006年起开始研究领域驱动设计,曾经在阿里巴巴、神州数码、网宿科技等上市公司担任技术专家与技术经理,现在负责腾讯微信支付和智慧零售技术团队在领域建模、分析和设计方面的实践指导。