汪峰哭晕在厕所-《实现领域驱动设计》中译本评点-第2章(1)

相关链接

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

《实现领域驱动设计》的翻译错误>>

[答疑]《实现领域驱动设计》的译者其实没错?(一)>>

[答疑]《实现领域驱动设计》的译者其实没错?(二)>>


十多年前,我去一家北京某家单位讲课。

第一天结束后,主人家,也就是主张引进这个培训的领导——IT部门的A总,在附近请我吃饭。

互吹环节,列席的另外一位领导B总说,“我今天听了一节课,感觉对我们帮助很大啊,以后还要有劳潘老师……”,接下来的话让我的满脸笑容瞬间呆滞——“继续帮助我们推进敏捷开发”。

**********

上一篇关于《实现领域驱动设计》中译本的文章已经是2022年了。

本来不想针对这个写太多,其实我的观点是这些书连英文原版都不推荐看,更不用说歪曲得不行的中译本了,除非是负负得正,歪打正着。

但架不住偶尔就有同学把我当“领域驱动设计专家”,发个中译本的图片过来找我答疑“我正在学习领域驱动设计,有个问题……”。

于是,决定还是写一下。

该书真正的内容从第2章开始,我就从第2章开始评点。 

图片

评点1

原文

图片

图1 Implementing Domain-Driven Design原文

原译文

图片

图2 《实现领域驱动设计》译文

第2章一开头的翻译就出现了大问题,把作者的整体意思扭曲了。

three things是说三件要做对(get these right)的事情,不是说三个概念。

原文此处没有“概念(concept)”一词,纯属译者自行加戏。需要用到“概念(concept)”的地方,作者会使用的。例如,接下里的文字就有“all these concepts”,指的就是用粗体标出的“概念”。

我把things和concepts在图1中圈出。

这个错误引出了下面的大错误。

• What your Domain is

• What your Subdomains are

• What your Bounded Contexts are

原译文译成:

什么是领域,什么是子域,什么是限界上下文。

如果本章的主要内容是给出这几个概念的定义,那么这本书就应该叫《领域驱动设计》,而不是叫《实现领域驱动设计》。

其实作者的意思是:

你(严谨一些,应该是“你的系统”)的领域是什么?你的子领域是什么?你的限界上下文是什么?

作者是想讲述:怎样为你的系统正确地找到这些东西。

就像汪峰问:

你的梦想是什么?

图片

要真实地回答这个问题并不容易。

也许你以为的梦想,其实是别人(例如家长)硬塞的。有的人甚至需要心理学专业人士的帮助,才能认清自己真实的梦想。

如果按照原译文这样译,就变成了汪峰做报告《什么是梦想》。 

图片

图片

原文“discussed in detail(详细讨论)”被轻飘飘地翻译成“出现在”。

当然,Evans的书也没有“详细讨论”,这纯属圈子里的高情商商业互吹。

延续前面的错误,原文没有说“概念”。这里说的是把事情做对。

**********

译文可以改为

有三件事情,你必须非常清楚地了解:

你的领域是什么

你的子领域是什么

你的限界上下文是什么

不能只是因为[Evans]把所有这些概念放在后半部分详细讨论,就觉得它们是次要的。要成功实现DDD,你必须把这几件事情做对。

反转

还存在另一种可能,也就是上面所说的负负得正,歪打正着。

译者站在三四层楼这么高,比所有人都清醒,所以在译文中拨乱反正。

译者看清了本书没有像作者宣称的那样往前迈进一步,而只是重复了Evans书的内容,于是把译文写成“什么是领域……”。

同样,译者看清了Evans的书没有详细讨论这些概念,所以把译文改成“出现在”。

您觉得呢?


如何选择UMLChina服务

UMLChina公众号精选(20240222更新)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://xiahunao.cn/news/2805461.html

如若内容造成侵权/违法违规/事实不符,请联系瞎胡闹网进行投诉反馈,一经查实,立即删除!

相关文章

[附完整代码]群智能算法跑21种真实世界优化问题,并输出结果到excel||群智能算法跑CEC 2020真实世界优化问题,并输出结果到excel

1、简介 灰狼算法跑跑21种真实世界优化问题|足球训练队优化算法跑21种真实世界优化问题||牛顿拉夫逊算法跑21种真实世界优化问题||冠状豪猪CPO跑21种真实世界优化问题。 ‘FTTA’,‘BWO’, ‘CPO’, ‘FHO’, ‘GWO’, ‘HHO’, ‘NRBO’,‘SCA’,‘SGA’,WOA’跑21种真实世…

【MySQL】多表操作、事务、索引

MySQL MYSQL 多表设计 一对多插入测试数据外键约束(物理外键)使用逻辑外键 MYSQL 多表设计 一对一表结构 MYSQL 多表设计 多对多 MYSQL 多表设计 一对多 建表语句 员工表 CREATE TABLE tb_emp (id INT UNSIGNED PRIMARY KEY AUTO_INCREMENT COMMENT ID,username VARCHAR(20) N…

谷歌gemma2b windows本地cpu gpu部署,pytorch框架,模型文件百度网盘下载

简介 谷歌DeepMind发布了Gemma,这是一系列灵感来自用于Gemini相同研究和技术的开放模型。开放模型适用于各种用例,这是谷歌非常明智的举措。有2B(在2T tokens上训练)和7B(在6T tokens上训练)模型,包括基础和指令调整版本。在8192个token的上下文长度上进行训练。允许商业使…

Android进阶之旅(第5天)

充实的一天又过去了,今天真的好冷啊,我们这里雪很大,早上最傻逼的决定就是穿了一个短的棉袜出来,漏脚踝,冷成傻子 接下来老规矩,看下昨天计划的完成情况: 今日计划: 1.过bug 2.看…

金航标电子位于广西柳州鹿寨县天线生产基地于大年正月初九开工了!!!

金航标kinghelm(www.kinghelm.com.cn)总部位于中国深圳市,兼顾技术、成本、管理、效率和可持续发展。东莞塘厦实验室全电波暗室、网络分析仪、高低温测试柜等仪器设备齐全,可进行高低温、双85等测试,独立完成产品的检测…

2024生物发酵魅力展示会-光德流体

参展企业介绍 河北光德流体控制有限公司始建于1996年,是一家从事以不锈钢为母材的洁净应用材料研发与专业制造的实体企业。产品主要包括卫生级球阀,隔膜阀,蝶阀等,并广泛应用于生物发酵,医疗制药,食品饮料…

建立不同类型网站分别大概需要多少钱??

如今,越来越多的企业会考虑建立一个企业官方网站来展示企业形象,或者建立一个电子商务网站平台来拓展业务渠道,或者建立一个企业内部网来协助企业进行网上工作。 网站建设的类型有很多种,不同类型的网站成本差异很大。 因此&#…

3DIoUMatch: Leveraging IoU Prediction for Semi-Supervised 3D Object Detection

3DIoUMatch: Leveraging IoU Prediction for Semi-Supervised 3D Object Detection 论文链接:https://arxiv.org/pdf/2012.04355.pdf 代码链接:https://github.com/yezhen17/3DIoUMatch 作者单位:Stanford University等 发表平台:…

浙大恩特客户资源管理系统 PurchaseAction SQL注入漏洞复现

0x01 产品简介 浙大恩特客户资源管理系统是一款针对企业客户资源管理的软件产品。该系统旨在帮助企业高效地管理和利用客户资源,提升销售和市场营销的效果。 0x02 漏洞概述 浙大恩特客户资源管理系统中 PurchaseActio 接口处存在SQL注入漏洞,未经身份认证的攻击者可以利用该…

一文带你了解 OpenAI Sora

最近AI圈最火的无疑是OpenAI在2月15日发布的Sora。 Sora可以根据文本生成一分钟的高清视频,生成的视频画质、连续性、光影等都令人叹为观止,Sora无疑将视觉生成推到新的高度。 本文将重点回答三个问题:(1)Sora的原理…

mysql 事务详解一

前言 提到事务,大家肯定不陌生。在我们现实生活中也是存在的,比如我们去超市购物,然后去支付。虽然是两个步骤,必须保证同时成功,这个交易才可以完成。 如果这个场景,拿到我们购物系统,就是几…

浅拷贝导致的bug

错误代码: //初始化formTableData的值 const formTableData ref({saleOrderTime:,saleOrderDetails:[] });const showModal async (item) > {//调接口获取后端返回的数据let data (await api.searchSaleOrderById({saleOrderId:item.id})).dataconsole.log(&…

零样本带解释性的医学大模型

带解释性的医学大模型 提出背景解法拆解方法的原因对比以前解法 零样本带解释性的医学大模型如何使用CLIP模型和ChatGPT来进行零样本医学图像分类用特定提示查询ChatGPT所生成的医学视觉特征描述相似性得分在不同症状上的可视化,用于解释模型的预测注意力图的可视化…

使用python查看官网是否发布新的内容

目录 前言 第一章、python介绍和使用pip install下载包 1.python介绍 2.使用vscode编写python 3.pip install的使用 第二章、查看官网是否发布新的内容 第三章、代码实现 目录结构 代码实现 check_new_news.py files.py news.py main.py file.txt 运行演示 前言 也…

基于飞凌嵌入式RK3568核心板的边缘计算门禁屏解决方案

边缘计算作为一种将计算任务从云端推向网络边缘的新型计算模式,正日益受到各行各业的青睐,并已在我们的生产和生活当中得到了广泛的应用,其中“门禁系统”就是最常见的与边缘计算相结合的应用之一。 传统的门禁系统受限于数据处理能力和网络…

【C语言】详解计算机二级c语言程序题

文章目录 前言资料相关程序题 一(字符串)程序题 二(数组)程序题 三(基础)程序题 四(结构体)程序题 五(结构体)程序题 六(基础) 前言 …

运放的虚短和虚断

上图中,线性区的这条斜线的斜率,就是开环增益(或者叫开环放大倍数),对于理想运放,其开环增益为正无穷,当然对于市面上的运放产品,斜率是不可能无穷大的,一般为几万~几百万…

【区块链】智能交易模式下的数据安全流通模型

【区块链】智能交易模式下的数据安全流通模型 写在最前面**区块链智能交易模式概述****数据安全流通的挑战****数据安全流通模型的核心要素****实现数据安全流通的区块链技术****区块链智能交易模式下数据安全流通模型的设计原则****数据安全流通模型的应用案例分析****面临的挑…

【蓝牙协议栈】btsnoop 概念介绍

1. btsnoop 概念介绍 btsnoop 用于记录蓝牙协议栈跟芯片交互的数据。在分析蓝牙问题的时候有很大的用途,能够快速定位问题所在,一般协议栈都有整合这个或者类似功能,否则我不认为这个协议栈是一个合格的协议栈,在 android 手机中…

高刷电竞显示器 - HKC VG253KM

今天给大家分享一款高刷电竞显示器 - HKC VG253KM。 高刷电竞显示器 - HKC VG253KM源于雄鹰展翅翱翔的设计灵感,严格遵循黄金分割比例的蓝色点晴线条,加上雾面工艺及高低起伏错落有致的线条处理,在VG253KM的背部勾勒出宛若大鹏展翅的鹰翼图腾…