点击阅读原文进京东购买
右军:
领域驱动设计方面的书现在不是太多,而是太少。想必不少读者受过《领域驱动设计》和《实现领域驱动设计》两本书的启蒙。本书是我特别推荐的领域驱动设计方面的技术书,为何特别推荐,且听下文。大约在2007年,我第一次读《领域驱动设计》一书时,如读天书,主要记住了类似实体、值对象、工厂、仓储等概念。近年来,随着微服务的流行,国内对领域驱动设计的研究和实践愈发多了起来。我对领域驱动设计的态度是:相对于战术设计,应该更看重战略设计。数年前,我醉心于研究领域模型。领域是业务变化中接近不变性的部分,业务包括领域对象、业务逻辑和界面交互3个层次,其中领域对象是最稳定的。2015年我组织领域建模工作坊活动时,用的就是《分析模式:可复用的对象模型》一书中的一个需求场景。2016年我写了一篇文章,强调了问题域和解决方案域的区分。张逸兄在GitChat上的两个连载专栏历时两年,创作数十万字,内容之丰满,关键节点探讨之深刻,于我之所见,浩瀚领域专家,无出其右者。虽大家都各自奔忙,仅偶有线上问候或者面聊,但皆有受益。本书的成书过程尤其令人钦佩,张逸兄不是直接将专栏调整成书,而是重新组织架构,提炼出自己的方法体系,可以说是推陈出新,自成一家。张逸兄敢言人之所未言。领域驱动设计有四大不足:领域驱动设计缺乏规范的统一过程,领域驱动设计缺乏与之匹配的需求管理体系,领域驱动设计缺乏规范化的、具有指导意义的架构体系,领域驱动设计的领域建模方法缺乏固化的指导方法。他创造性地提出领域驱动设计统一过程,虽然此方法有无调整空间,一定是要在不断实践中去检验的,但单就他的这份胆识和专业,足以让人钦佩。如果说非要给本书提一点儿意见的话,我觉得本书有点儿厚了。我认为一本好书也要兼顾读者的情况,最好能达到让读者快速上手的学习效果。但张逸兄坚持让本书以集大成者的面貌出现,洋洋洒洒数十万字,力求让其成为一本值得珍藏的技术书。凡学习,须循序渐进。我建议读者把面向对象的分析(object-oriented analysis,OOA)、面向对象的设计(object-oriented design,OOD)、统一建模语言(unified modeling language,UML)、模式等相关知识作为阅读本书的前序内容。《领域驱动设计》一书也特别提到了“复杂性”,有一定的软件从业经验的朋友对“复杂性”更感同身受。每个人心中都有一个哈姆雷特,每一位读者都可以登临领域驱动设计的阁楼,从不同的角度或俯瞰、或仰望、或凝视。我之所得:于道,是对限界上下文特别有共鸣的部分,以及问题空间(域)与解空间(域);于术,是作者提出的领域驱动设计的“三大纪律八项注意”,可作为团队执行作战任务的纪律规范。其中,“三大纪律”是实施领域驱动设计的准则:
信笔至此,兹为张兄推荐。本书精彩之处甚多,留待读者去发现。祝阅读愉快!作者:于君泽(右军),技术专家,《深入分布式缓存:从原理到实践》《架构宝典》和《程序员的三门课:技术精进、架构修炼、管理探秘》联合作者。
❀❀❀