之前的一篇文章谈了战略ddd的重要性与Bounded Context这个概念,最近在油管上看到一个2017年关于domain driven design的演讲。如下
感觉与自己现在讲的主题十分相关,正好在这里展开说一下。
他认为Bounded Context可能是ddd中最重要的概念。而悲剧地是ddd的社群可能更倾向于讨论战术方面的各种设计模式,他顺便也吐槽了一下ddd这本书的章节编排。
我也很赞同他的看法。具体说一下这两点。
1. ddd的战略部分容易被忽略
还是摆出这张图
学习ddd的人在开始可能更热衷于战术层面设计模式。如上图里repository, specification, aggregate那部分概念,以及在代码层面如何实现它们。
本人自己也是如此,在读《domain driven design》时基本把战略部分给跳过了。而且战略部分也是书的最后几章。读完了战术篇的部分,就已经觉得
也由于此书对读者的极其不友好,读到最后几章时基本气力已经耗尽。(如下图,全书共17章,Bounded Context居然到了14章才登场。)
然而,在实际的项目中,如果我们只是去讨论如何实现这些设计模式,那会是很可笑的。最重要的是如何实现项目的需求。虽说如此,本人在写博客时,还是先从ddd的战术开始写的。原因大概有这么几点
1.1 这反映了自己对ddd的认知历程。本人一开始也深陷ddd战术的话题,而对战略层面的东西基本选择跳过。所以认