1. 程式人生 > >《Code Complete 程式碼大全》中用到的英文

《Code Complete 程式碼大全》中用到的英文

我覺得自己讀英文書的時候還算順利,但是給我一篇技術文件讓我翻譯得很地道時,我就總是到處亂翻亂查,積累一下老外的用法,中翻英的時候用處比較大 

Part I. Laying the Foundation

[譯:]打好基礎

[析:]有這樣一個片語lay the foundation of/for 為...打下基礎,奠定基礎

Chapter 1. Welcome to Software Construction

1. Mostly "construction" refers to the hands-on part of creating something.

[譯:]多數情況下,“構建”是指創造事物過程中動手

的那些部分

hands-on,親自實踐的

1.1. What Is Software Construction?

1. red tape 繁文縟節,官樣文章

1.2. Why Is Software Construction Important?

1. You can't drop construction; it's where the rubber meets the road .

[譯:]你不能扔下構建活動——這是不可或缺的環節。

[析:]where the rubber meets the road,這是個俚語,是指解決問題的關鍵 ,英文解釋是 at the point in a process where there are challenges, issues, or problems,這也是美國固特異(Goodyear)輪胎廣告的一句精彩廣告語,用的還挺貼切。

Chapter 2. Metaphors for a Richer Understanding of Software Development

[析:]注意這裡rich的用法,表示充分的,豐富的 ,而跟有錢沒關係

1. sterile room, flame, twisted sex changer  無菌室,論壇口水戰,雙絞線交換頭

[析:]這個雙絞線交換頭的英文還真夠...不知道怎麼來的,不過人家這裡就是在講metaphor麼,所以放這裡還挺合適,雙絞線的英文正式點的說法是twisted-pair

2.2. How to Use Software Metaphors

1. searchlight 探照燈 ,這次突然讓我想到了越獄裡面的某個畫面,米帥憂鬱的眼神,口水一個

2. It comes without a 30-day, money-back guarantee .

[譯:]30天內不滿意即可退款

[析:]這章的內容和計算機英語沒多大關係,但是生活中經常用哈,也拿出來說說好了。例如這句吧,放商場那個環境下,理解起來很容易,但是大家可能明白意思,但是不知道的人估計也不知道這句話怎麼用英文說,還是記一記吧。現在的網路商店基本上都是會這麼說:We offer a 30 day money back guarantee

2.3. Common Software Metaphors

1. program readability 程式可讀性

2. ocean liner 遠洋定期客輪

[析:]liner有班機,定期輪船的意思

3. To move a wall six inches costs more if the wall is load-bearing than if it's merely a partition between rooms.

[析:]注意這裡給出了承重牆 的說法 load-bearing wall

Chapter 3. Measure Twice, Cut Once : Upstream Prerequisites

[譯:]三思而後行:前期準備

upstream,上游的,逆流而上的

[析:]這句話在《高效能人士的七個習慣》中也出現過,平時做事要遵循此原則阿。再來看upstream這個詞,直譯是上游的,也就是說是整個河流的上行部分呢,所以比喻成工作中的前期階段,準備工作

3.5. Architecture Prerequisite

1. your one-year-old could solve it between spoonfuls of strained asparagus .

[譯:]你一歲的小孩 都能在眨眼的功夫 解決它

[析:]這話可夠難理解的,現在我也沒弄明白,首先是省略了指人的代詞,用one-year-old來說明一歲的(孩子),然後是spoonfuls of strained asparagus,這個俚語哪來的,不清楚....查不到。單說下strained ,指蔫了的

2. vice versa 反之亦然

3. User Interface, Performance, Fault Tolerance 使用者介面,效能,容錯性

[析:]這章出現很多計算機中常用的英文,列舉一下,這次詞彙應該既能看著英文說出中文意思,也能通過中文翻譯成英文

4. I18n, L10n

[譯:]國際化,本地化

[析:]不知道中國人是不是喜歡用這個詞,但是我是之前不知道(這麼說跟我不是中國人一樣...)。由於internationalization國際化這個詞首尾是In,總間有18個字母,所以就有了I18n.同理L10n是由於Localization

4.1. Choice of Programming Language

1. Assembly Language, assembler 組合語言,彙編

2. business logic 業務邏輯

Part II: Creating High-Quality Code

Chapter 5. Design in Construction

1. pseudocode 虛擬碼

5.1. Design Challenges

1. rules of thumb

[譯:]經驗方法

[析:]rule of thumb指單憑經驗的方法,複數rules of thumb指經驗法則,是一種對大多數情況都有用的法則 ,但不是可用於任何情況下的法則。

2.progress grinds to a halt.

[譯:]進度就慢慢停了下來

3. High fan-in

[譯:]高扇入

5.3. Design Building Blocks: Heuristics

1. Large programs that use information hiding were found years ago to be easier to modify—by a factor of 4—than programs that don't.

[譯:]幾年前人們發現,使用資訊隱藏的大型程式,比沒有使用資訊隱藏的修改起來容易4倍

factor, 係數

[分析]factor用於表示度量的增或減,可以翻譯成多少倍。

Chapter 6 . Working Classes

1. programmers began thinking about programs in terms of routines

[譯:]程式設計師開始基於子程式 去思考程式設計

routines : [計] 例行程式,程式:一套設計來執行一項特定且有限的任務的程式指令

[析:]用子程式來描述routine,會讓人迷惑的吧,它的英文解釋是 A set of programming instructions designed to perform a specific, limited task,個人文為翻譯成用於完成特定任務的指令集 比較合適。

[我譯:]程式設計師開始根據指令集來思考

2. A class is a collection of data and routines that share a cohesive, well-defined responsibility .

[譯:]類是由一組資料和子程式構成的集合,這些資料和子程式共同擁有一組內聚的、明確定義的職責。

share responsibility : 承擔任務,共同

[析:]這個詞翻譯成共同擁有的職責,感覺不通順,雖然意思能明白,用承擔了...的責任 ,感覺比較舒服。

另外還要注意一下well-defined 詞,意思是定義明確的,界限分明的

[我譯:]...,這些資料和子程式承擔了內聚和明確定義的職責

3. even if no common data is involved.

common: 共用的,公有的

[析:]這個詞我們一般都是用它普通的意思,別忘了它的共用的意思

4. Cross-Reference 對照, 參照

6.1 . Class Foundations: Abstract Data Types (ADTs)

1. you'll take an ad hoc approach to manipulating fonts.

[譯:]你就要使用一種拼湊的方法來操縱字型了。

[析:]這個詞的實際意思是專門的,特別的 ,這裡的翻譯是意譯了。

2. You can make the interface more informative .

[譯:] 讓介面提供更多資訊

[析:]注意這裡的 informative的用法,我覺得可以翻譯成 可讀性 更好, 你以後可別再說什麼help you understand之類的了