Mix-In的译法探讨

原创 2008年05月05日 13:18:00
有许多动态语言都支持Mixin的特性,比如Ruby、Python。而JavaScript虽然在语言层面没有Mixin支持,但是Prototype所模拟的类似Ruby的extend方法其实就是一种Mixin方式。

目前的工业语言(Java、C#等)普遍采用了单根继承+接口的方式。但是类的继承复用被一定程度上牺牲了(也就是要求尽可能用组合而不是继 承)。这源于class既要用于实例化也要用于代码复用,而这两者存在矛盾。Mixin类似一种多继承,但是它明确是一种小粒度的代码复用单元,而不直接 用于实例化。因此它避免了多继承的常见问题。

但Mixin并没有非常统一确定的译名。目前使用最多的是“混入”的译法。在最近的翻译讨论中,有人提出了一些新的译法,比如“混生”、“掺料”等。请参见:http://groups.google.com/group/python-cn/browse_thread/thread/d7e0a256a1bf6465。下面是我在一个翻译论坛中的讨论贴,整理于此。

对于mix-in这样的新词,我觉得大体有几种做法:

1. 不译。

因为新词的意涵尚未普遍接受甚至本身内涵外延未确定下来,现有译名可能也存在问题,所以直接用英文也是一个比较好的方式。不过除了高端书之外,如果一般书籍采用这种策略,需得对名词做好译注,避免普通读者难以理解其意。

我个人建议在未有好译名之前,暂时以此种方式为宜。

2. 从既有之译名中选取一个。

目前看来纯直译型的“混入”(真是直白,mix是混,in是入……)接受程度最高。但是“混入”其实意思不是很明确。Mix-In,根据我的理 解,其本义是指可以被混入其他类的单元,而不是指混入这种动作。至于说现在变成Mixin(去掉了hyphen)之后,意思是否有所转变,还望大家共同讨 论。偶个人认为仍然去掉hyphen只是从一个组合词固化为一个专业术语,本身含义还是没有发生变化的。

3. 在译著中换用其他等价词汇。

比如Trait。当然Trait的译名本身也是个难题。

4. 自创译名。

下面谈谈“混入”之外的其他几个译名。

我觉得“掺料”不太好,工业味道太浓,它对应的英文大概是admixture,指混合剂。而mix-in根据wikipedia,是源于冰淇淋的混合口味,是很美味浪漫的,用“掺料”真是大煞风景了。还不如叫做“配料”甚至“浇头”,呵呵。

“混生”这个词在汉语语法上似乎比“混入”更名词化一些,不过我认为“混生”与“派生”共用“生”字也并没有什么特别好的地方,因为mixin class和derived class并不是同种性质的东西。特别的,mixin本身不是说混和生成的类,而是说可以用来混合的部件。所以“混生”一词较“掺料”反而有点脱离了 mixin的原意,容易让人误解“混生类”和“派生类”一样,是指子类。实际上mixin却是指“用于混入的类”,有那么点儿类似抽象类 (abstract class)或者partial-class。

如果一定要译,我贡献一个译法供大家批判:

mixin 混元
mixin class 混元类

所谓混元,就是用于混合的元件。


BTW,“混元”在汉语中倒是古已有之,如“混元一气”,还有金庸小说中的大奸角成昆外号就是“混元霹雳手”。这个“混元”大体是指世界初创时的混沌元气。

最强的中文菜单英文译法

  • 2008年11月19日 21:39
  • 3.32MB
  • 下载

拟声词译法

翻译英语拟声词时,除了闻声解意外,还应根据具体语境和修辞等要求,选用恰当的翻译方法。常见的拟声词译法大体有如下几种:A. 英语原文中有拟声词,汉译时也用拟声词英语原文中的拟声词在汉语中可译成相同的拟声...
  • yahohi
  • yahohi
  • 2011年03月12日 14:59
  • 770

转:指针的操作dereference的一种新译法:用引

http://blog.163.com/xiaochunxu@126/blog/static/854233362008725114653448/ dereference的一种新译法:用引   ...

python mix-in

Mix-in技术介绍 Mixin可 以译为混入,就是在不改变原对象的情况下对其进行扩展。本文介绍了在 Python 语言中,如何实现Mixin技术,及安装的相应技巧。 什么是Mix-in技术...

Mix-in技术介绍

转贴自:http://www.linuxforum.net/forum/showthreaded.php?Cat=&Board=python&Number=108570&page=0&view=col...

完美"mix-in"(混入)模式———js对象想怎么玩就怎么玩

完美"mix-in"(混入)模式———javaScript对象想怎么玩就怎么玩

德语常用译法

  • 2014年11月25日 13:10
  • 42KB
  • 下载

MYSQL简单提权--Mix.dll My_udf.dll(老东西,做个备份)

S- serv提权方式人人都会用了,搞得现在的主机都配置得非常安全,看来攻击手法的层出不穷也是造成中国网络安全进步的一大原因之一,还有其他的 pcanywhere获取密码,替换服务,等等。但是现在也没...
  • yatere
  • yatere
  • 2011年12月02日 10:20
  • 1874

Mix滤镜大师 3.0.2

  • 2015年10月05日 06:26
  • 28.96MB
  • 下载
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Mix-In的译法探讨
举报原因:
原因补充:

(最多只允许输入30个字)