您的位置:首页 > 新闻 > 资讯 > 开源网站 gutib_微商代理平台_灰色行业seo_百度线上推广

开源网站 gutib_微商代理平台_灰色行业seo_百度线上推广

2025/1/14 1:02:52 来源:https://blog.csdn.net/rolt/article/details/143100049  浏览:    关键词:开源网站 gutib_微商代理平台_灰色行业seo_百度线上推广
开源网站 gutib_微商代理平台_灰色行业seo_百度线上推广

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

A patient with observations of the presence of thirst, weight loss, and polyuria indicates diabetes.

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


 
虽然没有完全使用类图(类型图)上的概念,但几个标红的地方基本上都译出来了,presence译作“呈现”,polyuria译作“多尿”。

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


 
也没有使用类图上的概念,而且译成了一句大白话,presence漏译,没有体现出作者的意思。另外,polyuria译作“尿频”,这是错误的。

**********

Fowler为什么要很别扭地这样写,如果他想说大白话,可以换另外的写法。

这是因为他要用图3.10所定义的概念来表达。

图3.10原图如下,我把本文所列句子的关键词和图中的类型划线对应:


 
observation、presence对应图上的类型,thirst, weight loss, polyuria则是Observation Concept(观察概念)的一些实例。

原图不是用我们现在常见的UML来画的,可能理解起来有些费劲。我画的UML版本如下:


 
从图上可以看到,“观察”有一个子类叫“类别观察”,“类别观察”下面又分两个子类,“不存在(Absence)”和“存在(Presence)”。

本文开头所列句子,2024中译本打算翻译如下:

一名患者有以下存在观察:口渴、体重减轻和多尿,这些观察指示有糖尿病。

更细一点说就是:

如果一个“患者(人)”对象链接到一些“存在观察”对象,而且这些“存在观察”对象又分别链接到“口渴”、“体重减轻”、“多尿”等“观察概念”对象→这个人可能有糖尿病。

要用类图上的概念来表达,不能大白话。

**********

说到这里,有没有同学觉得和领域驱动设计鼓吹的“通用语言”有点像?

对的,领域驱动设计可能已经在山顶上等着收获胜利果实了——可是,平时鼓吹“通用语言”,真的到了用“通用语言”的时候,怎么就忘了用呢?

用类图、状态机图等严谨的方式定义出来的概念,才是真正的“通用语言”。或者说,“通用语言++的祖先”早就有了,不需要领域驱动设计重新造词。

就像我之前的文章批评过的,目前为止,我就没看到国内的DDD圈子有合格的建模者,能严谨地把领域逻辑通过模型表达出来,只是在喊口号和、简单罗列和错误百出的简单类图。

**********

2020中译本还存在一个问题:把polyuria译成“尿频”。

Excessive Urination(Polyuria)是多尿,和尿频(Frequent Urination)不是一个意思。

下图摘自默沙东诊疗手册(https://www.msdmanuals.cn/home/kidney-and-urinary-tract-disorders/symptoms-of-kidney-and-urinary-tract-disorders/excessive-or-frequent-urination)


 
可以看到,尿频的尿量是正常的,只不过排尿次数多,每次排得少。这是比较常见的问题,特别是50岁以上男性。

多尿(一般也会尿频)则是总尿量变大,这个麻烦就大了,很可能是糖尿病。这就是书中原文所说的。

2004(机械工业出版社)中译本译为“多尿”,是正确的。

2020(人民邮电出版社)中译本译为“尿频”,是错误的。

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com