软件方法(下)分析和设计第8章分析 之 分析类图——知识篇(20211227更新)

软件方法(下)分析和设计第9章分析 之 分析类图——案例篇(20211228更新)

Ryan 2022-1-19 12:20

感谢老师的用心回答(补注:此处说的是​​《UML用什么表示六边形架构》​​)!我想再请教一个问题,您列举过一些DDD伪创新,那六边形架构算吗?

UMLChina潘加宇

这个“伪创新”可不敢扩大化,打击面太大。

我批评的“伪创新”主要针对这种情况(我在​​几篇文章里​​都提到):

更要警惕的是,有一个李四,也许和张三一样没有掌握高中方法,也许掌握了高中方法但是为了忽悠张三们,偷偷把"全等三角形"改名为"叠合三角形",然后和张三宣传:

我发明了"叠合三角形"新方法,比高中的三角函数有用,三角函数过时了。


回到六边形架构,我就根据我看过的资料随便说一下。

很多资料都说这个模式是Cockburn在2005年发布的,但Cockburn提出的时间应该比这个更早。

Martin Fowler在2003年的《企业应用架构模式》中就已经提到:

[答疑]六边形架构算伪创新吗_类图

类似的东西更早的资料也有,例如出版于1999年的《UML对象、组件和框架:Catalysis方法》(Desmond Francis D'Souza等,清华大学出版社出中译本)。

翻译有点乱七八糟,例如“适配器是有着很大传输容量的虚包”其实原文是“strong translation capabilities(强的翻译能力)”,估计译者把translation看成transmission了。如果要更详细了解,得看原文。

不过确实值得一看,看过之后,可以和DDD发明家的著作比较一下深浅。

[答疑]六边形架构算伪创新吗_三角函数_02

[答疑]六边形架构算伪创新吗_类图_03

更多的细节感兴趣的话只能自己去研究了。“伪创新”应该没有足够证据,而且Cockburn比较低调。


以下是扩展:

不过,要警惕“圈子封闭引用”的现象。一群人组成封闭的造词圈子,互相造词、互相引用、互相吹捧,对圈子外一无所知或视而不见。​之前文章提到Eric Evans说“20年来几乎没人写点什么”​​,这并非偶然。

[答疑]六边形架构算伪创新吗_三角函数_04

过去的敏捷圈子,现在的DDD圈子都有这种现象——其实,仔细观察会发现,这两个圈子里,很多人是重叠的

对这个圈子而言,“创新”来得非常容易。有的人甚至是这样创新的:我和公司同事某某(也是网红)讨论了什么什么,就悟到了某某创新。