DDD领域驱动设计批评文集
做强化自测题获得“软件方法建模师”称号
《软件方法》各章合集
参考潘加宇在《软件方法》和UMLChina公众号文章中发表的内容作答。在本文下留言回答。
只要最先答对前3题,即可获得本轮优胜。
如果有第4题,第4题为附加题,对错不影响优胜者的判定,影响的是优胜者的得分。
所有题目的回答必须放在同一条消息中,方为有效回答。
1 [单选]
下图摘自《领域驱动设计》,被圈住的“不变式”体现了领域驱动设计投资少、见效快、产量高、门槛低、仪式感十足的特点。
请问,选项中的哪一个“不变式”没有体现出这样的特点?
A)
B)
C)
D)
2 [多选]
张三在画领域模型。一个人一生中可能会和多个人有婚姻关系,张三画了一个人员的1对多自反关联。
接下来,张三在写目标系统的需求规约时,认识到目标系统只需要记住某人当前的配偶是谁。
假设仅在国内现行法律框架内讨论。
以下说法正确的有:
A) 目标系统的分析类图上应该是人员的1对1自反关联。
B) 同样的领域知识,在不同的目标系统中可能会有不同的含义,从而分析模型也会不同。
C) 这反映了领域驱动设计限界上下文的重要性,对领域模型做了DDD上下文降维切片式精准风暴映射。
D) 分析类图的1对1自反关联和领域模型的1对多自反关联不是同一个关联。
3 [多选]
Robert C. Martin 的书“Agile Software Development: Principles, Patterns, and Practices”,内容扩展自2000年他在自己网站objectmentor.com上发表的文章“Design Principles and Design Patterns”。
关于这篇文章,以下说法正确的有:
A) 该文写于敏捷宣言发布之前,文章中没有提到“敏捷(agile)”。
B) 文章认为,轻量(lightweight)开发应该使用这些设计原则和模式。
C) 当前,很多软件开发人员认为,软件设计之所以出问题是因为没有理解透文章中的这些原则。
D) 文章中没有提到“agile”、“light”、“lightweight”、“process”或“methodology”。
4 [单选]
许冠杰有一首歌《铁塔凌云》,歌中的“铁塔”指的是:
A) 香港海洋摩天塔
B) 东京铁塔
C) 广州塔
D) 埃菲尔铁塔