好好的一本《The C++ Programming Language》楞是讓他給譯成了一本天書。語句晦澀難懂不說,扭曲原意的地方也比比皆是。
今天無聊,拿出《C++ 程序設計語言》想看看迭代器traits。結果,沒看多少,就卡住了。P488文中一句“由于每個迭代器都定義了iterator_traits<iterator>…………”,我就納悶了,看前面說的,iterator_traits<iterator>應該是一個專門設計出來用于萃取iterator信息的模板啊,設計iterator_traits的目的就是用它來取得迭代器的信息的,并使內置的指針也可以像一個普通迭代器一樣使用。那為什么每個迭代器都要定義一個iterator_traits呢?不僅重復工作,也與iterator_traits的設計思想不符啊。
后來,找到該部分英文原文是:“Because iterator_traits<Iterator> is defined for every iterator,……”才搞明白,原文的意思是由于iterator_traits<iterator>是一個模板,它會為每個iterator特化出一個iterator_traits<iterator>的定義,其實的意思就是“因為iterator_traits模板會為每個迭代器定義iterator_traits<Iterator>,……”,而裘正好將主客體顛倒,原文的for的意思很明顯,而裘則將其當作了by來翻譯,很懷疑裘的英語是否可以達到CET4的水平。
PS:《The C++ Programming Language》有侯捷譯的繁體版,不知大陸為什么不引進。
《代碼大全》后面掛的審校也是裘,搞的我都不太敢買。。。
這么厚的書,你讓個老家伙審一遍,哈哈,想累死老人家啊,
不過話又說回來,"The C++ Programming Language"被他這么糟蹋就實在過分了。
TC++PL就比較不爽了,接口翻譯為界面還算接受,using 指令翻譯為 使用指令,總讓人以為using是動詞。有一天在書上看到了一個叫 現場 的東西,很是驚訝,怎么C++里有這么號東西,粗看了下,大概是local 本地化。不過語句還算是順的吧,只是術語自成一派。
對于這本書的翻譯水平,我實在不敢恭維
大家是就事論事的批判,和文化大革命的上綱上線完全不是一個概念。
再說了,如果是譯者用心翻書,就算如果有書中有錯誤,讀者肯定是如你說熱心幫助作者糾錯。但是如果是譯者根本就沒辦這個翻譯當回事,讓手下的學生亂翻一通來賺讀者的錢,這個你能讓讀者好過嗎?很明顯,像裘這樣的老字輩,不可能犯那些低級翻譯錯誤的,除了說他不上心,不善待讀者,還能說什么?
其實樓主的例子也到沒什么大問題。
我是正確的理解了。
http://www.is.pku.edu.cn/~qzy/books/cppl/words.htm
你可以不同意他的術語翻譯,但是從他的說明來看,可以肯定兩點:
1)書是他自己翻譯的,否則不會有那么仔細的說明
2)為什么某些術語會翻譯成那樣,是有他自己的想法的.
我認為裘老還是負責任的.
我現在還不敢看英文原版,除非是介紹工具咋用的幫助性文檔,或者是QT方面的資料.
否則必人家翻譯的還垃圾.而且還耽擱時間.
那就只有自己提高英語水品咯 ~
也許只是跟霜之哀傷同學的口味不合吧
至于說老先生的治學態度 各位看看老先生的個人主頁再說吧
不能理解 各位 書都沒看 就憑一面之詞就在這評論開了 倒真是開了眼界了
現在流行這樣么
LZ,我不同意你對他的批判,請看看他的主頁上面的說明:
http://www.is.pku.edu.cn/~qzy/books/cppl/words.htm”
看了上面的說明,還是覺得他做必須為糟蹋這本書和浪費讀者時間負責任!把約定俗成的一些術語按自己的理解翻譯給別人看恐怕很不合適吧?!大家都叫那個東西蘋果,你非要以你植物學家的身份自居稱它為茄子,居心何在??
你可以不認同他的術語翻譯,但是不能因此指責他不負責任.我想說明的是這個,謝謝.
他們聽不懂的
書都沒看的人在這評論得鬧哄哄的
沒什么好說的了
認真就輸了
我可真是閑的
呵呵
不曉得你有哪里看不懂!
是譯者維護的討論頁, 你不滿意可以進行建設性的批評.
我認為裘老師是想把這本書做好的, 至于翻譯,各有各的口味,
錯的,不順的地方你可以向譯者提出,共同完善這本書.
有說書是學生代工的,我不同意.1,通常會在前言中寫明有人參與編著.
2,你讀一讀看看語言風格是不是統一,很容易分辨出來.
沒有怎么好好學過C++就出來叫
就憑借一本書中的一點小問題就說這么多問題,真不像碩士生。
裘老師從來都是親歷親為的,不存在學生翻譯他掛名的情況
而且,他對程序語言的理解在國內絕對是頂尖的
如果有接觸過他都知道他是一個嚴謹的人
他在程序語言方面還是有很深理解的
至于書的翻譯 他有他的風格
不合你口味罷了
再者一本書中都難免會有些錯誤
你覺得有問題可以跟他聯系
我還不知道國內有哪位程序語言方面的著者和譯者像他這樣認真負責的
這個大字報的題目倒是很顯眼,估計許多人搜裘老師名字的時候都會在搜索結果中一眼看到(我就是這么點進來看的)
心寒+閃人
現在確實有一些老師是讓研究生去幫自己做很多事,譬如翻譯著作。但裘老師不是這樣的,他的每本譯作都是自己認真研讀后小心謹慎的翻譯的,并且每個用詞都會斟酌很久。裘老師在翻譯學術詞語時,會盡量追求譯文可以準確表達學術詞語的內涵,而不僅僅是表面意義。關于這點,您文章后的評論也有人指出了,你也可以去http://www.is.pku.edu.cn/~qzy/books/cppl/words.htm上裘老師自己的說明。在裘老師的書桌上擺著幾本英漢辭典,對于拿不準的詞他會來回查閱,來回考慮,以求達到最好的翻譯效果。裘老師并不像您猜測那樣“是否可以達到CET4的水平”,您使用這樣的語句有些過分了,已經遠遠脫離了對學術和經典的討論了。
您這篇文章在Google鏈接上排名頗高,不了解裘老師的人看到您的標題,很容易認為裘老師是個不負責任的人。在這個年代,裘老師是為數不多的能靜下心來鉆研學術,潛心教學的人。您這篇文章中誤會了裘老師的學術水平和學術態度,我們不希望這種誤會傳播開來,所以在這里懇請您將這篇文章刪掉,或者對標題和內容進行修改,您可以在文章中發泄您的情緒,探討學術問題,但不要懷疑裘老師的能力和品德。
謝謝。
inline char get(char *p)它說是在線函數
看P179 177頁 都是這樣的錯誤!
你太主觀了,非常到不負責,對人很不尊重。
這本書我看過,看到不深,但是覺的翻譯決不像你說到那么不好,說實話你也沒具體說哪哪不好,就講了個inline問題,我學C++的時候也叫內聯,但是后面我看這書完全沒覺的特別的,我覺的很好理解。如果你不是初學者,理解這個根本不是問題,如果你是個初學者,這個就更不是翻譯問題,因為你什么都不知道,他怎么說你怎么理解就是了,我初學時內聯這說法我覺的也挺費解,因為這不是個中文詞匯(或者很少用的詞匯,至少我在生活中沒碰到過)。
我主要做ARM開發主要是C語言,C++只是用來寫寫上位機程序。我說下我對翻譯的看法,大部分的初學者和一些程序員的英文水平絕對是達不到閱讀英文文檔的。我以前也到處瞎起哄,別人說翻譯到爛我也跟著瞎噴,直接到結果是買了好基本英文原著。
最典型的是《C語言參考手冊》這本書,你去搜索下,我估計你找不到一個說翻譯的好的,不像這里還有不少人為這書辯護。C語言參考手冊 網上都說買英文版,可事實如何呢,我買了,但是1章都沒看完就去買中文版了,這本書買了有3年了吧,我沒事就拿出來看看,英文版還壓在箱底,看了看覺的根本不是翻譯的爛,而是這本書本來就不好翻譯,看起來也覺的枯燥(當時對C的理解也很淺)。
作為讀者應當尊重譯者,尤其是外語不好的讀者。工作了幾年也經常需要翻譯一些技術文檔,才覺的翻譯很不容易,有的就幾句話的段落,自己理解一眼掃過去就能明白,可是翻譯出來可能折騰了半小時自己都不滿意。
你可以找本你覺的翻譯的最爛的書,找到你覺的翻譯的最爛的話看看,然后你自己看原文把翻譯寫出來和他翻譯的比比,看誰的好
再找一章你覺的最容易理解的1章讀1遍,看看看中文和英文用的時間分別用了多長,各自有效理解的是中文版的多,還是英文版的多
再快速瀏覽幾頁,每頁挺流時間10-20妙,看看你能抓住這幾頁內容大概會講哪些知識點,看看中文版和英文版的區別吧,哪怕是翻譯的很爛的
如果你看懂1章英文的時間不是遠遠超出中文恩的話,我建議你直接買英文版,當買前一定要三思,你的英文水平夠不夠,當然如果你還是學生的話,買本英文版(有1-2本就行)來練練英語閱讀還是很必要的,因為時間比較寬裕
翻譯很不容易,而且計算機可以算新興學科,對外來詞匯有不同的譯法很正常。另外一些英語高手或技術高手不要動不動就看英文原版(其實大部分這么說的都不是什么高手,只是這么說就覺的自己是高手了),我就是曾經的受害者,箱子底部的幾本IT名著,我就當收藏了。
侯捷的翻譯往往很狡猾,關鍵之處,就直接把英文單詞放在那里,讓讀者自己去決定,也許對博主這樣的水平是再好不過了,但是對于大多數入門水平的人來說,就太難了。
您不能因為您的個人理解和觀點的與譯者不同而遷就于譯者,這樣公開且并不基于充足理由的批評對于這樣一位德高望重的學者是極其不尊重的。學術上的不同觀點是拿來討論的,而不是在這里公開的謾罵。我懷疑您寫這篇文章前肯定沒有跟裘老師就相關觀點展開討論,就直接點名道姓的公開批評,這是不負責任的。
我猜 Moon 是裘老的博士生在讀 lyj, 呵呵. 不過他說的都是事實. 翻譯并不是容易的事情. inline 翻譯成在線或者內聯, 只要解釋清楚其具體含義即可吧. 希望大家就事論事, 不要搞人身攻擊.
lzg 師兄?
為老裘辯護的更是不講理,別老往尊重不尊重上面扯,我和他唯一的聯系就是他翻的幾本書,看看翻成這個樣子,怎么尊重他?拿資歷歲數壓人的最招人煩。
老裘什么時候知道看看別人的評論,大家用的名詞,給個像樣的說法,我就把這段開頭兩個字反過來說。
inline再怎么原意也應該是“行間函數”吧
通用是“內聯函數”
4) inline。不少人用“內聯”,我不喜歡這個造出來的新詞。發明“內聯”者想的是對程序實體的處理方式(加工方式,指將函數代碼嵌入調用位置),而inline一詞不僅關心這種處理方式,也強調運行方式和情況(指無需經過函數調用步驟而直接運行)。根據這些,我立刻想到的詞匯就是“在線”,在各種技術領域常用的與此有關詞匯如“在線控制”,“在線處理”,“在線工作”,“在線運行”,“在線設備”等。這些詞的意思包括將設備裝入加工線,在加工線上處理,在運行中直接做等等。inline function用的正是這個意思。因此我選擇了“在線”。
許多年前看到C++的inline機制,當時的認識就是:這是宏與函數概念的結合,可以說它是“類型安全的宏”,或說是“在調用處展開的函數”。我腦子里的兩個術語就是inline expanding和inline execution,沒考慮應該用哪個中文詞。
inline expanding指代碼加工階段將inline函數代碼嵌入調用位置代碼之中,當然這時還可以做某些優化,可以做一些部分求值(partial evaluation)工作。inline execution則指代碼執行時無需創建活動記錄(亦稱frame),也無需執行函數的入口和出口序列,直接進入函數所生成的代碼去執行。在意義上我們一定有共識,否則就不好談了。
對inline function,目前最常見的譯法是“內聯”。這是個很怪的詞,我覺得不符合中文習慣。“聯”指獨立實體之間建立關系,常見的詞如“聯絡”,“聯系”,“聯合國”,“互聯網”。過去知道有“外聯部”,講外聯也是很合理的。而“內聯”就荒唐了,從來只有“連為一體”而不能“聯為一體”。“聯”就是承認雙方(或多方)的獨立性。而inline 函數的代碼則要與調用處的代碼連為一體。因此,估計“內聯”是“內連”之誤,屬于以訛傳訛。從這個角度看,“內聯”遠不如“內連”或者“內嵌”。但是,“內連”和“內嵌”都難以表示代碼執行時的動態情況。“內嵌”還有一個致命弱點,它很容易與(加工前的)靜態函數嵌套相混淆。
因為inline函數牽涉到與程序有關的三個時間:源代碼,加工后的目標代碼,執行。貼切的詞確實不容易選。正是在這種情況下,我選擇了可稱為“直譯”的詞。況且,“在線”也能表現代碼嵌入(嵌入調用代碼行之中,代碼行是線性的序列),函數所生成代碼的直接執行(在線執行,執行動作也是線性的序列)。當然,“在線”也是online的翻譯。從直接的意思看,online是“在線上”,表達某種外物的在線。inline的直接意思是“在線內”,想說的是融為一體,我覺得這也可以稱為一種在線。
http://www.is.pku.edu.cn/~qzy/books/cppl/words.htm
而且在公開詆毀他人名譽本身就是一種不好的行為……
樓主三思
這個解釋我看過,雖然作者是經過深思熟慮的;可是拋開已有的約定成俗的翻譯,去造一個生僻詞,個人并不怎么認同。
另外,LZ沒有對裘老師做任何人身攻擊,只是客觀的闡述他的看法而已,用“批判”并無任何不尊敬之處。何況,學術交流、學術批判,本來就該在平等的基礎之上進行的,尊敬了反而不好。只要不帶惡意人身攻擊,任何質疑、批判,偶覺得都是可行的。不然就得這樣說話了:
裘老師在書里把 inline 翻譯成了‘在線’了。作為一個著名譯者,應該不會犯這樣的低級錯誤的,一定是他有他的想法。可是我學識淺薄,有點不理解裘老師的用意,弱弱地覺得還是按照大眾譯法說成‘內聯’好一些。不知道是不是?
別扭不?
學了那么多年英語,我感覺語感就是對英語意思的感覺,有的東西自己明白,也可以用一段話描述清楚,可是要用一個詞說清楚是不行的,只能盡量接近原意,
當然最貼近原意的辦法是直接用英文單詞,作者為了照顧沒有英語基礎的人才仔細斟酌用詞。
inline大家覺得翻譯為內聯好是因為習慣了,說明大家看這本書的時候已經學過C++了,以前的知識形成了干擾,第一次看到內聯這個詞的時候不覺得難懂嗎?
比如laser,以前音譯為鐳射,可是后來有人打破傳統根據意思起名叫激光,現在慢慢又習慣叫激光了,意譯最終還是比直接生硬的音譯好,
google中文名叫谷歌我就感覺很別扭,總覺得直接叫英文才好,
現在看有的書上把facebook叫臉譜網感覺也怪怪的,也許以后能習慣吧。
不要說我是托,我只是一個普通的programmer,路過...
看了她的網站,其實我覺得裘宗燕翻譯比我們那些習慣了的叫法更好一些
ps:不要以為我是托哈, 我倒是想成為裘老的學生, 可惜沒資格啊
C/C++ 語言中表達式的求值
http://www.math.pku.edu.cn/teachers/qiuzy/technotes/expression2009.pdf
裘老的解釋:
http://www.math.pku.edu.cn/teacher
http://www.math.pku.edu.cn/teachers/qiuzy/
我估計在中國找不到幾個像裘宗燕一樣的老師了
另外關于他的為人,看看這個 http://blog.csdn.net/wangyonggang/article/details/119750
P.S. 我只是一個普通讀者
不僅反映了英文確實不行,而且確實不太嚴謹。
真不知道邏輯在哪里。
支持lz看原版的,國外好書基本上被糟踐光了。這些教科書詞匯量都有限的很,熬過第一個星期,看別的都沒什么障礙。
能做裘老師這樣翻譯技術書籍還在追求信、達、雅的老師的學生,我只能說感到幸運
對對對 這個我也想說呢 話說在線應該是online阿
事隔多年又一次在書架上翻到這本書,再次翻起評價比第一次看到更低了,說這本書糟蹋了原文是說輕了,應該說是誤人子弟,這和譯者年紀多大學問多深沒有關系,出版的書看到的人千千萬萬,影響也很深遠,即便譯者本人理解得再深,要是讀者讀得一臉茫然又有什么用呢。
聯想到最近的從入門到放棄系列,說不定真的有人會因為這本書而放棄。
各種詭異的句式,各種自造的詞組,這樣的譯本還不如從來沒存在過。