編程格調(diào)是一本關(guān)于計(jì)算機(jī)編程風(fēng)格的“老書(shū)”,有讀者認(rèn)為就算只看這本書(shū)最后的SUMMARY OF RULES都會(huì)覺(jué)得對(duì)你有所啟發(fā)。另外,有讀者建議“后來(lái)者們”最好能通讀這本書(shū),并結(jié)合書(shū)中的實(shí)例來(lái)理解那些RULES,你會(huì)知道什么是一種優(yōu)秀的習(xí)慣,如果能將書(shū)中總結(jié)的RULES運(yùn)用到實(shí)際編程中去,雖然不能讓你成為一個(gè)優(yōu)秀的程序員,但是會(huì)給你啟發(fā),讓你通往優(yōu)秀的程序員之路。本節(jié)內(nèi)容東坡小編為大家整理帶來(lái)的是一份pdf格式高清免費(fèi)電子版編程格調(diào)(試讀版),需要搶先一步閱讀的朋友們只需點(diǎn)擊本文相應(yīng)的下載地址進(jìn)行下載即可!
編程格調(diào)內(nèi)容簡(jiǎn)介
該書(shū)是編程慣用法和規(guī)則的實(shí)踐指南。全書(shū)從表達(dá)、控制結(jié)構(gòu)、程序結(jié)構(gòu)、輸入和輸出、常見(jiàn)錯(cuò)誤、效率和測(cè)試工具、文檔等多個(gè)角度,概括了程序設(shè)計(jì)中若干的最佳實(shí)踐或規(guī)則,并通過(guò)代碼示例加以分析和闡釋。
本書(shū)兩位作者都是程序設(shè)計(jì)領(lǐng)域的大師級(jí)任務(wù)。他們四十年前在本書(shū)中給出的70多條最佳實(shí)踐和規(guī)則,大多數(shù)在今天仍然適用。
本書(shū)堪稱(chēng)計(jì)算機(jī)專(zhuān)業(yè)人士和程序員的必讀的經(jīng)典之作,適合于不同層級(jí)的程序員和計(jì)算機(jī)相關(guān)專(zhuān)業(yè)的學(xué)生參考閱讀。
編程格調(diào)目錄
第1章 緒論 1
撰寫(xiě)簡(jiǎn)潔的程序—不要耍小聰明 2
第2章 表達(dá) 13
簡(jiǎn)單并且直接地表達(dá)你要說(shuō)的意思 14
使用庫(kù)函數(shù) 14
避免使用臨時(shí)變量 16
代碼要清晰,不要為了“效率”犧牲可讀性 16
讓機(jī)器干臟活 17
用函數(shù)調(diào)用替代重復(fù)的表達(dá)式 18
加括號(hào)來(lái)避免歧義 21
選擇不會(huì)被混淆的變量名 21
避免使用Fortran的算術(shù)IF 23
避免不必要的分支 25
使用語(yǔ)言好的特性,避免使用不好的特性 25
不要使用條件分支來(lái)代替一個(gè)邏輯表達(dá)式 26
用“電話測(cè)試”來(lái)檢查可讀性 29
第3章 控制結(jié)構(gòu) 39
使用DO-END和縮進(jìn)來(lái)界定語(yǔ)句組 40
用IF-ELSE強(qiáng)調(diào)兩個(gè)操作中只有一個(gè)被執(zhí)行 42
用DO和DO-WHILE來(lái)強(qiáng)調(diào)循環(huán)的存在 45
確保你的程序是自頂向下閱讀的 46
使用IF…ELSE IF…ELSE IF…ELSE 來(lái)實(shí)現(xiàn)多路分支 47
使用基本的控制流結(jié)構(gòu) 48
先用容易理解的偽語(yǔ)言編寫(xiě)代碼,然后再翻譯成 你需要使用的語(yǔ)言 52
避免使用THEN-IF和空ELSE 55
避免使用ELSE GOTO和ELSE RETURN 56
判斷要盡可能緊挨著與之相關(guān)的操作 58
使用數(shù)組來(lái)避免重復(fù)的控制流 61
選擇可以簡(jiǎn)化程序的數(shù)據(jù)表示方法 63
不要止步于第一遍的代碼草稿 66
第4章 程序結(jié)構(gòu) 71
模塊化,使用子例程 74
讓模塊之間的耦合變得可見(jiàn) 75
每一個(gè)模塊都應(yīng)該做好一件事 76
確保每一個(gè)模塊都隱藏好一些東西 78
以數(shù)據(jù)為導(dǎo)向來(lái)構(gòu)建程序的結(jié)構(gòu) 80
不要修補(bǔ)爛代碼——重寫(xiě)它 84
分塊編寫(xiě)和測(cè)試大的程序 91
對(duì)于遞歸定義的數(shù)據(jù)結(jié)構(gòu)使用遞歸過(guò)程 91
第5章 輸入和輸出 97
校驗(yàn)輸入的合法性和合理性 100
保證輸入數(shù)據(jù)不會(huì)違背程序的限制 101
利用文件結(jié)束符號(hào)或結(jié)束標(biāo)志來(lái)終止輸入, 不要讓用戶(hù)去計(jì)數(shù) 102
識(shí)別出非法輸入數(shù)據(jù),如果可能則糾正之 103
使用統(tǒng)一的形式處理文件結(jié)束條件 105
讓輸入數(shù)據(jù)易于準(zhǔn)備,并讓輸出數(shù)據(jù)意義不言自明 108
使用統(tǒng)一的輸入格式 110
讓輸入數(shù)據(jù)易于校對(duì) 111
盡可能選擇自由格式輸入 112
使用含義自明的輸入,指定默認(rèn)值,將以上二者都輸出 112
將輸入與輸出局限在子例程中 116
第6章 常見(jiàn)錯(cuò)誤 119
確保所有的變量在使用之前都被初始化 120
不要停留在一個(gè)bug上 122
使用調(diào)試編譯器 124
用DATA語(yǔ)句或INITIAL屬性初始化常量, 用可執(zhí)行語(yǔ)句初始化變量 125
小心“差一”錯(cuò)誤 126
要注意對(duì)不等式進(jìn)行正確的分支 126
避免循環(huán)有多個(gè)出口 128
確保你的代碼巧妙地“不做事情” 131
在邊界值上測(cè)試程序 135
預(yù)防性編程 136
10.0乘以0.1不等于1.0 137
不要比較浮點(diǎn)數(shù)是否相等 139
第7章 效率和測(cè)試工具 145
先做對(duì),再做快 147
在提高程序運(yùn)行速度時(shí),要保持其正確性 149
先把程序改得更簡(jiǎn)潔,再提高其運(yùn)行速度 150
不要為了“效率”上的蠅頭小利而犧牲程序的簡(jiǎn)潔性 151
讓編譯器執(zhí)行平凡優(yōu)化 151
不要勉強(qiáng)地復(fù)用代碼,應(yīng)該進(jìn)行改編 152
保證特殊情況真的有特殊性 155
保持簡(jiǎn)單性,反而會(huì)更快 157
不要為了提高速度而畫(huà)蛇添足—去尋找更好的算法 159
在程序中放置測(cè)試語(yǔ)句,“增效”之前先執(zhí)行測(cè)算 161
第8章 文檔 165
確保注釋和代碼一致 167
不要用注釋復(fù)述代碼做的事情, 每個(gè)注釋都要有實(shí)際意義 167
不要注釋糟糕的代碼——重寫(xiě)它 169
使用含有意義的變量名 170
使用含有意義的語(yǔ)句標(biāo)簽 171
程序的格式要有助于讀者的理解 171
用縮進(jìn)來(lái)體現(xiàn)程序的邏輯結(jié)構(gòu) 172
記錄你的數(shù)據(jù)規(guī)劃 175
不要過(guò)度注釋 176
結(jié)束語(yǔ) 180
編程格調(diào)試讀版內(nèi)容截圖
- PC官方版
- 安卓官方手機(jī)版
- IOS官方手機(jī)版