浑元换算策略和武德换算策略-《分析模式》漫谈36

DDD领域驱动设计批评文集

做强化自测题获得“软件方法建模师”称号

《软件方法》各章合集


“Analysis Patterns”的第3章有这么一句:

A conversion, however deterministic, does not follow that faithfully.

2004(机械工业出版社)中译本的译文为: 

图片

翻译基本上是正确的,特别是标红的deterministic翻译为形容词。

2020(人民邮电出版社)中译本的译文为:  

图片

看起来好像长得差不多(当然,多了不少字),但实际上意思已经不对了。

这个地方犯的错误,和之前的漫谈文章“怎么老是你?-《分析模式》漫谈25”中提到的把how abstract误作how to abstract类似。 

图片

同样,however+形容词,也是形容数量和程度的,意思是“无论再怎么**”,见以下词典截图: 

图片

摘自https://www.oxfordlearnersdictionaries.com/definition/english/however

因此,原文:

A conversion, however deterministic, does not follow that faithfully.

翻译过来应该是:

换算无论再怎么确定,也显得不够忠实。

2020中译本的“怎样确定换算方法”,相当于把原文当成“how to determine a conversion method”了,听起来像是GoF的策略模式: 

图片

还有一个让译者产生错觉的原因,可能是how或者however后面跟着的那个词,本身就可以作为动词(例如上文提到的abstract)或者存在长得差不多的动词(例如deterministic→determine)。

如果是上面词典截图中的however small、however cold可怎么办呢?

我在《评 “状态和事件本质相同”》中也说到类似错觉:

英语中,规则动词的过去式和过去分词后面都是ed,也许正是这一点让领域驱动设计专家误认为这两个ed是一回事,从而得出了惊天的结论。

碰到不规则动词,这个问题就暴露出来了。

do的过去式是did,不能作为形容词,可以作为形容词使用的是“to do”、“doing”、“done”,这也是我们常见到的状态的名称。

did是一个行为,瞬间发生就结束,done是一个状态,可以停留在那里很久。

混淆过去式和过去分词的知识错误,在领域驱动设计专家翻译的《实现领域驱动设计》中译本中也有体现。

**********

Fowler说“换算是确定的(deterministic)”,是什么意思呢?

就像下面这个公制和英制的换算: 

图片

下面这个就不是了: 

图片

张三说他重185磅,你在大脑里给他换算一下,把84千克记到系统里,虽然没有大问题(现在定义质量单位都精细到出动普朗克常数了,还能有什么大变化),但还是显得不够忠实,因为张三没有这么说——这就是Fowler的意思。

张三往账户里存一个小目标的港币,你给他换算成美元记到系统里,那就不只是“不够忠实”了,要出大问题的。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值