读《The C Programming Language》(1)

来源:互联网 发布:知乎南京哪家皮肤科好 编辑:程序博客网 时间:2024/04/29 19:48

为参加一次机试,我不得不重拾自从大学毕业后就再没用过的C。还好是机试,我可以自己选一本书研读,不用忍受小强的唠里唠叨。说到选书,不禁又想起了大学时代K小强书的情景。小强的书讲的是真细,一不小心就掉入细节的汪洋大海中,爬都爬不出来。小强秉承了中国老师的一贯作风,对学生真是心贴心、手把手,硬是把一门编程语言嚼成一口一口的知识点,生怕学生们犯错。而且这种书巨好出题考你,甭管你程序写得怎么样,把小强的知识点背熟包你高分。

学C语言用TCPL,没有什么好说的。有意思的是我手边还有一本中文版的,我给女朋友买的,放假回家被我借来。捧着几位教授翻译的TCPL,读了几页,怎么就感觉不是那个味儿。直板、僵硬、话说的客观委婉、不带什么感情色彩,怎么看都不像老外写的。难道大师的口气就这样?带着好奇,我打开了电脑里的英文版,语言立马鲜活了起来。读中国的教材,都是一个八股样,结构严谨、语气生硬,作者只顾自己怎么讲述方便,表述怎么严谨,完全不顾读者阅读的感受,一幅高高在上的样子。老外的书读起来感觉是一种朋友的口气,在循序渐进、轻松幽默中娓娓道来。

举个例子,在1.4节的第一句话:"A final observation before we leave temperature conversion forever. It's bad practice to bury ``magic numbers'' like 300 and 20 in a program",中文版翻译为:“在结束讨论温度转换程序前,我们再来看一下符号常量。在程序中使用300、20等类似的“幻数”并不是一个好习惯”。看了翻译,那种轻松略带幽默的口气完全不见了,意思是传达了,但换上了中国式的冷面扑克脸。在原文中,"final", "forever", "bury", "magic numbers"这些词所表达的丰富含义完全没有翻译出来。而且译者不知道从哪儿生造出来一个词“幻数”,大概译者看着作者轻松幽默的口气绞尽脑汁都翻不出来,只好这样了。骨子里一幅冷面扑克像,想学点轻松也学不来。其实还不如直译的好:“在我们永远地告别温度转换程序之前,再作最后一次考察。在程序中埋藏像300、20这样的“神奇数字”可不是什么好习惯”。

TCPL中译版大概还算好的,没听说有什么大纰漏,尚且如此,现在大家明白为什么中国的书——毁人不倦。兴趣从小就这样被扼杀。

原创粉丝点击