希望和大家一起讨论一下关于"向后兼容"和"向前兼容"的问题
现在越来越多的程序员书籍中都将backward compatibility这一专业用语翻译成"向后兼容".刚开始读的时候还真是不习惯.
所谓"backward compatibility",是指软件的新版本对旧版本的兼容问题.
在中国人的语法习惯中,所谓的后是指后来的,以后的,将来的意思.所以才会有后来者居上一说.在"backward compatibility"这个词语中的backward("向后地(的)")被译者其直译了过来,这就有了"向后兼容".这么一个专用名词.但是它所代表的时间轴和我们所传统意义是有冲突的.我们很容易接受"向前兼容"这一名词,因为前就是前面的,以前的,过去的.从而很容易就可以理解为新版本对旧版本的支持.反之却很难理解.
以前有个同事因为说了句oracle的版本可以"向后兼容",曾被我嘲笑N久.因为我一直将"向后兼容"理解为软件的老版本的软件对新版本的兼容性.这一概念在软件里根本就是无稽之谈.现在看来,并不是这么回事.我那同事真的是白白被我嘲笑了这么久.原来都是译文害的.
我不知道这样的翻译是否已经成为今日译文的墨规,实在是有点无法接受.
以上论点属个人拙见.如有不同意见洗耳恭听~~