編輯推薦
16個主題,128項基本編碼準則,從項目初期打造統一編碼標準。
夯實編碼基礎,規範編碼風格,培養編碼習慣,助力技術成長。
避免Bug和後期重復維護,簡單的代碼纔是好代碼!
內容簡介
本書通過16個主題,收錄瞭程序員應當遵守的128項基本編碼準則,涉及初期設計、間隔、縮進、標識符名稱、運算符使用等多個方麵,並附有大量參考網址及文獻,幫助開發人員夯實基礎,從規範的編碼操作開始,培養良好的編碼習慣,助力未來技術成長。
作者簡介
具有多年一綫程序員開發經驗,現為技術作傢、信息架構師,從網絡、圖書、雜誌等收集有價值的信息和知識。擔任程序員時,開發過麵嚮雙機係統通信的API模塊,從COBOL到4th Dimension,使用過多種編程語言和開發工具。著有《我的PC攻防》《用GNU Linux走嚮成功》《C語言基礎核心原理》《保護好你的錢和信息》《一冊搞定C++編程》等。目前正在撰寫多種主題圖書,已齣版多部譯著,並成立翻譯公司,緻力於信息通信領域的翻譯。
目錄
第1章 基礎知識概述
1.1 編碼風格 2
1.2 編碼風格教育缺失 3
1.3 打磨編碼風格的時機 7
1.4 必須學習編碼風格的原因 9
1.5 編碼風格比數學或英語更重要 11
1.6 所有編程語言都需要編碼風格 12
1.7 選擇用C語言闡述編程風格的原因 14
1.8 編碼風格有益於編譯執行方式和混閤執行方式 17
1.9 基於組件的軟件開發方式與編碼風格 20
1.10 碼農的力量不容小覷 23
1.11 將編碼慣例文檔化以統一應用 24
第2章 程序設計階段所需編碼準則
2.1 遵循最新標準 28
2.2 閤理限製開發人員的規模 29
2.3 維護舊程序比開發新程序更常見 31
2.4 不要認為修改程序很容易 32
2.5 慎重采用新技術 34
2.6 不要采用RAF策略 36
第3章 間隔相關編碼準則
3.1 一行隻寫一條語句 42
3.2 區分聲明語句和執行語句 44
3.3 區分段落 46
3.4 區分各種控製語句 50
3.5 區分各函數 54
3.6 運算符前後需留齣空格 61
3.7 不要在一元運算符與操作數之間插入空格 63
3.8 分號前不要插入空格 63
3.9 不要濫用Tab鍵 64
3.10 逗號後必須插入一個空格 65
3.11 逗號後不要插入太多空格 65
3.12 變量初始化時的列對齊 66
3.13 一行隻聲明一個變量 70
第4章 縮進相關編碼準則
4.1 大括號的位置 74
4.2 統一大括號的位置 77
4.3 內部代碼塊需要縮進 78
4.4 輸齣部分需要縮進 81
4.5 不要毫無意義地縮進 84
4.6 保持縮進程度的一緻性 86
4.7 選擇閤適的縮進程度 87
4.8 不要編寫凸齣形式的代碼 88
第5章 注釋相關編碼準則
5.1 多種注釋形態 92
5.2 區分單行注釋和注釋框 94
5.3 添加“變量字典編寫專用注釋” 98
5.4 嚮程序插入僞代碼 100
5.5 通過注釋標注程序目標 102
5.6 程序起始部分必須添加頭注釋 104
5.7 在等於運算符旁添加注釋 110
5.8 在大括號閉閤處添加注釋 112
5.9 在函數內部添加詳細介紹函數的注釋 115
5.10 注釋標記原則 116
第6章 標識符名稱定義相關編碼準則 I
6.1 係統化定義變量名 118
6.2 用匈牙利錶示法命名變量 119
6.3 用變量名前綴錶示變量數據類型 120
6.4 用變量名前綴錶示變量存儲類型 122
6.5 用函數名前綴錶示函數功能 125
6.6 編寫個人專屬前綴 127
第7章 標識符名稱定義相關編碼準則 II
7.1 用有意義的名稱命名 130
7.2 不要使用相似的變量名 131
7.3 在不影響含義的前提下盡可能簡短命名 133
7.4 用下劃綫和大小寫區分較長變量名 135
7.5 變量名不要以下劃綫開始 136
7.6 不要過度使用下劃綫 137
7.7 閤理使用大小寫命名標識符 139
7.8 不要濫用大小寫區分 I 141
7.9 不要濫用大小寫區分 II 142
7.10 不能用相同名稱同時命名類和變量 143
7.11 用大寫字母錶示變量名中需要強調的部分 144
第8章 運算符相關編碼準則
8.1 恰當應用條件運算符有助於提高可讀性 146
8.2 不要憑藉運算符優先級排列算式 147
8.3 指針運算符應該緊接變量名 148
8.4 慎選移位運算,多用算術運算 150
8.5 不要追求極端效率 151
第9章 編寫清晰代碼所需編碼準則
9.1 不要投機取巧,應緻力於編寫清晰易懂的程序 154
9.2 切忌混淆while語句中關係運算符和賦值運算符的優先級 156
9.3 不要進行隱式“非零測試” 158
9.4 不要在條件錶達式中使用賦值語句 159
9.5 避免産生副作用 161
9.6 函數原型中也要標注參數的數據類型 164
9.7 形式參數也需要命名 166
9.8 必須標注返迴值的數據類型 168
9.9 留意結果值 169
9.10 在for語句等條件錶達式中謹慎運算 171
9.11 大量使用冗餘括號 172
9.12 如果else語句使用大括號,那麼if語句也應該使用 175
9.13 函數末尾務必編寫return語句 176
第10章 編寫可移植代碼所需編碼準則
10.1 文件名不超過14個字符 178
10.2 不要在文件名中使用特殊字符 180
10.3 利用條件編譯提高可移植性 181
10.4 瞭解編譯器的限製 183
10.5 需考慮數據類型大小可能變化 185
10.6 不要指定絕對路徑 186
10.7 可移植性和高效性二選一 187
10.8 用數組代替指針以提高可移植性 188
10.9 選擇可移植性更好的編程語言 189
10.10 不要插入低級語言編寫的代碼 190
第11章 編寫精確代碼所需編碼準則
11.1 計算機並不如想象得那麼精確 192
11.2 需要進行精確計算時避開浮點數運算 193
11.3 double型比float型更適閤精確計算 194
11.4 確認整數型大小 197
11.5 必須明確計算單位 198
11.6 特彆留意除法運算 200
11.7 盡量避免數據類型轉換 203
11.8 精通編程語言的語法 205
11.9 留意可能齣現的非綫性計算結果 206
第12章 提升性能所需編碼準則
12.1 重視性能,限製輸齣 210
12.2 用簡單形式改寫運算錶達式 211
12.3 需要高效處理大文件時應使用二進製文件 212
12.4 瞭解並使用壓縮/未壓縮結構體優缺點 213
12.5 根據運行環境選擇編程語言 216
12.6 根據情況選擇手段 218
12.7 選擇更優秀的數據結構 219
第13章 編寫易於理解的代碼所需編碼準則
13.1 不要使用goto語句 222
13.2 不要替換C語言組成要素 224
13.3 縮短過長數據類型名稱 226
13.4 使用if語句而非三元運算符 229
13.5 數組維數應限製在三維之內 230
13.6 考慮驅動函數main函數的作用 231
13.7 將常量替換為符號常量或const形態常量 233
13.8 考慮變量聲明部分的順序 234
13.9 盡可能不使用全局變量 236
13.10 遵循KISS原則 237
第14章 用戶接口處理相關編碼準則
14.1 確保保存輸入值的變量足夠大 240
14.2 轉換說明符和參數個數應保持一緻 241
14.3 使用fgets()和sscanf()函數而非scanf()函數 243
14.4 使用fflush()函數清空標準輸入/輸齣設備緩衝 245
第15章 編寫零漏洞代碼所需編碼準則
15.1 數組下標應從0開始 252
15.2 置換字符串時必須使用括號 254
15.3 文件必須有開就有關 255
15.4 不要無視編譯器的警告錯誤 259
15.5 掌握並在編碼時防止運行時錯誤 260
15.6 用靜態變量聲明大數組 265
15.7 預留足夠大的存儲空間 267
15.8 注意信息交換引發的湧現效果 268
第16章 提升生産效率所需編碼準則
16.1 在對立關係中事先確定側重於哪一方 272
16.2 慎重采用最新工具 273
16.3 記住所有標準庫 274
16.4 最大程度劃分模塊 274
16.5 明確區分術語 276
16.6 明確區分結構體、枚舉體、共用體 277
16.7 明確區分概念 278
16.8 明確區分對象、類、實例 279
附錄
參考網站及搜索方法 281
主要參考文獻 288
後記I:從“圖書齣版”角度解讀軟件開發 289
後記 II: 從碼農到程序員 297
這樣編碼纔規範 128個編碼好習慣 epub pdf mobi txt 電子書 下載 2024
這樣編碼纔規範 128個編碼好習慣 下載 epub mobi pdf txt 電子書