zl程序教程

您现在的位置是:首页 >  后端

当前栏目

为什么要考Martin Fowler的年龄-《软件方法》自测题解析014

方法软件 解析 为什么 年龄 自测题 014
2023-06-13 09:14:21 时间

DDD领域驱动设计批评文集>>

《软件方法》强化自测题集>>

《软件方法》各章合集>>

第1章自测题 Part3

7 [多选题]

经常被当作“偷懒庇护所”的说辞有:

A) 软件开发是艺术,艺术是没有道理可讲的

B) 我们敏捷了

C) 建模带来竞争优势

D) 不管用什么方法,把项目做成功就是好方法

答案和解析

答案为ABD,参见第一章内容。

8 [单选题]

以下软件开发名人中,和前央视主持人小崔(崔永元)同龄的是:

A) Martin Fowler

B) Kent Beck

C) Ivar Jacobson

D) Peter Coad

E) James Rumbaugh

F) Grady Booch

答案和解析

崔永元生于1963年2月20日。

 A) 正确选项。

Martin Fowler生于1963年12月18日。

 B) 错误选项。

Kent Beck生于1961年。

 C) 错误选项。

Ivar Jacobson生于1939年9月2日。

 D) 错误选项。

Peter Coad生于1953年12月30日。

 E) 错误选项。

James Rumbaugh生于1947年8月22日。

 F) 错误选项。

Grady Booch生于1955年2月27日。

彩蛋

不止一个人问过我,出这道题目的意义是什么?是Martin Fowler的年龄。

这道题在2013年的《软件方法(上)》第1版就有了,当时的题目是这样的:

图1 《软件方法(上)》第1版截图

距这道题诞生大约5-6年前,有一件事让我印象深刻。Martin Fowler的一位中国同事在搞宣传时,盛赞Martin Fowler,说马大叔这么大年纪了,还是那么活力四射,可是当时Fowler还不到45岁。

也许是Fowler留的胡子重一些,就被说成“这么大年纪”吧,要是那位同学看到哈登,可能就会说,哈大叔这一大把年纪还驰骋NBA。

图2 哈登和Martin Fowler,Fowler的图片摘自2000年5月的martinfowler.com

如果是偶尔口误也就罢了,要是有意无意地把Martin Fowler刻画成“德高望重的老科学家”的形象,那就不好了。

下面几个关于Martin Fowler的描述放出去,可能不少人会在后面全部打勾:

*年纪比刘德华大 □

*软件开发教父 □

*重构之父 □

*创新无数 □

在Bing搜索引擎搜索“martin fowler”,出来的第一项就是:

图3 bing.com搜索结果(2022年8月27日)

可惜,这些都是一些人有意无意、经年累月营造出来的“中国版Martin Fowler”的形象。虽然随着时间流逝,Fowler也快59岁了,慢慢要配得上“老科学家”的形象了,但这些吹嘘至少十五年前就已经开始了。

**********

如果某位普通读者出于崇拜狂吹Martin Fowler,并给他上各种尊号,这是读者的自由。

如果这些夸大来自Martin Fowler所在公司的同事,或者出版Martin Fowler的书的出版社编辑,那就不应该了。

如果是因无知而夸大,那事先本应该做好功课,如果是有意夸大,那……。

Fowler的书和文章,用语还是相当严谨的,风格也比较低调,光是这一点就已经比国内外的敏捷、DDD圈子的大多数“名人”要强。

相比之下,一些相关人士就没那么严谨了,乱上尊号。这种有意无意的造神,反而会损害Fowler的形象,相信这也不是Fowler乐意看到的。

如果进一步波及到公司的形象,那就更不好了。

说到“狼性文化”,您会首先想到哪家公司?

说到“996”,您会首先想到哪家公司?

当说到“造词”、“夸大”时,会不会让人首先想到某家公司?

现在“狼性文化”和“996”已经像蒲公英一样,随着从公司“毕业”的人群飘洒向神州大地,不希望“造词”、“夸大”等风气也一样随着从公司“毕业”的人群四处飘洒。

**********

除了前面内容已经提到的“教父”、“敏捷”、“微服务”,我再列出一些知识点,以供读者在碰到相应的夸大宣传时辨别

☆Fowler不是“重构之父”(我写过文章《Martin Fowler是"重构之父"吗》)。

☆Fowler没赶上UML之前的那一波面向对象方法学浪潮,他的第一本书《分析模式》出版于1996年。

☆也许和个人性格特点有关,Fowler并没有提出什么方法学或符号体系。这是好事。

☆《分析模式》里的符号不是Fowler发明的。

这个地方多说几句:这个俗称“鸦脚(Crow's Foot)”的表示法最开始叫Barker表示法,是Richard Barker等人1981年在CACI公司开发的,作为SSADM方法学(结构化系统分析和设计方法学)表示法的一部分。后来Barker加入了Oracle,这个表示法被Oracle接纳。

以下是1988年的一篇论文的截屏,上面的表示法就是“鸦脚”:

图4 摘自Structured systems analysis and design method (SSADM), Caroline M Ashworth, 1988

**********

在国内软件界,我和Martin Fowler打交道应该算是很早了,2002年1月,我就邀请他到UMLChina聊天室做了一次交流,交流实录在:https://mp.weixin.qq.com/s/IJnRQhQkx-cPa1ysQCMePQ

图5 2002年1月Martin Fowler交流的聊天室截屏

交流实录的翻译在这里:

http://umlchina.com/xprogrammer/XProgrammer10.pdf

图6 《非程序员》电子杂志截屏

后来,UMLChina还参与了Fowler的《企业应用架构模式》《UML精粹》中译本的工作。

**********

最后,马大叔不姓马,他姓福。

图7 2012年央视节目截屏

9月12-16晚网课[改为19:30上课*5天]:软件需求设计方法学全程实例剖析

[改为19:30上课*5天]8月31-9月4日晚剔除伪创新的领域驱动设计-网络公开课

[新增EA027智慧公寓系统]25套UML+EA和StarUML的建模示范视频-全程字幕(2022.7.25更新)

《软件方法》书中自测题-题目全文+分卷自测(1-8章)16套111题

《软件方法》强化自测题集110题

CTO也糊涂的常用术语:功能模块、业务架构、用户需求……[20210217更新]

如何选择UMLChina服务

作者微信:umlchina2