注冊 | 登錄讀書好,好讀書,讀好書!
讀書網(wǎng)-DuShu.com
當(dāng)前位置: 首頁出版圖書科學(xué)技術(shù)計算機(jī)/網(wǎng)絡(luò)軟件與程序設(shè)計其他編程語言/工具編程匠藝:編寫卓越的代碼

編程匠藝:編寫卓越的代碼

編程匠藝:編寫卓越的代碼

定 價:¥85.00

作 者: (美)古德利弗 著,韓江,陳玉 譯
出版社: 電子工業(yè)出版社
叢編項:
標(biāo) 簽: 程序設(shè)計

ISBN: 9787121143472 出版時間: 2011-11-01 包裝: 平裝
開本: 16開 頁數(shù): 613 字?jǐn)?shù):  

內(nèi)容簡介

  如果你可以編寫出合格的代碼,但是想更進(jìn)一步、創(chuàng)作出組織良好而且易于理解的代碼,并希望成為一名真正的編程專家或提高現(xiàn)有的職業(yè)技能,那么本書都會為你給出答案?!毒幊探乘嚕壕帉懽吭降拇a》的內(nèi)容涵蓋編程的各個要素,如代碼風(fēng)格、變量命名、錯誤處理和安全性等。此外,本書還對一些更廣泛的編程問題進(jìn)行了探討,如有效的團(tuán)隊合作、開發(fā)過程和文檔編寫,等等?!毒幊探乘嚕壕帉懽吭降拇a》各章的末尾均提供一些思考問題,這些問題回顧了各章中的一些關(guān)鍵概念,可以促使你像專家一樣思考,從而使本書成為那些渴望作為團(tuán)隊的一分子,職業(yè)并高效地編程的新手們的一本絕佳的參考書。

作者簡介

暫缺《編程匠藝:編寫卓越的代碼》作者簡介

圖書目錄

第1篇 代碼表面第一部分
第1章 善于防守:健壯代碼的防御性編程技巧
1.1 向優(yōu)秀的代碼前進(jìn)
1.2 設(shè)想:最壞的選擇
1.3 什么是防御性編程?
1.4 又大又壞的世界
1.5 防御性編程技巧
1.5.1 使用好的編碼風(fēng)格和合理的設(shè)計
1.5.2 不要倉促地編寫代碼
1.5.3 不要相信任何人
1.5.4 編碼的目標(biāo)是清晰,而不是簡潔
1.5.5 不要讓任何人做他們不該做的修補(bǔ)工作
1.5.6 編譯時打開所有警告開關(guān)
1.5.7 使用靜態(tài)分析工具
1.5.8 使用安全的數(shù)據(jù)結(jié)構(gòu)
1.5.9 檢查所有的返回值
1.5.10 審慎地處理內(nèi)存(和其他寶貴的資源)
1.5.11 在聲明位置初始化所有變量
1.5.12 盡可能推遲一些聲明變量
1.5.13 使用標(biāo)準(zhǔn)語言工具
1.5.14 使用好的診斷信息日志工具
1.5.15 審慎地進(jìn)行強(qiáng)制轉(zhuǎn)換
1.5.16 細(xì)則
1.6 約束
1.6.1 約束的內(nèi)容
1.6.2 移除約束
1.7 總結(jié)
1.8 另請參見
1.9 思考
1.9.1 深入思考
1.9.2 結(jié)合自己
第2章 精心布局:源代碼的版面和樣式
2.1 什么是關(guān)鍵
2.2 了解你的讀者
2.3 什么是好的樣式
2.4 使用括號
2.4.1 K&R括號風(fēng)格
2.4.2 懸掛式的括號風(fēng)格
2.4.3 縮進(jìn)的括號風(fēng)格
2.4.4 其他的括號風(fēng)格
2.5 主宰一切的風(fēng)格
2.6 內(nèi)部風(fēng)格(以及在哪里使用它們)
2.7 設(shè)立標(biāo)準(zhǔn)
2.8 正義的戰(zhàn)爭
2.9 總結(jié)
2.10 另請參見
2.11 思考
2.11.1 深入思考
2.11.2 結(jié)合自己
第3章 名正言順:為有意義的事物起有意義的名稱
3.1 為什么我們應(yīng)該恰當(dāng)?shù)孛?br />3.2 我們對什么進(jìn)行命名
3.3 名字游戲
3.3.1 描述性
3.3.2 技術(shù)上正確
3.3.3 符合語言習(xí)慣
3.3.4 恰當(dāng)
3.4 具體細(xì)節(jié)
3.4.1 命名變量
3.4.2 命名函數(shù)
3.4.3 命名類型
3.4.4 命名名字空間
3.4.5 命名宏
3.4.6 命名文件
3.5 玫瑰不叫玫瑰
3.5.1 保持前后一致
3.5.2 利用上下文
3.5.3 使用對你有利的名稱
3.6 總結(jié)
3.7 另請參見
3.8 思考
3.8.1 深入思考
3.8.2 結(jié)合自己
第4章 不言自明:編寫“自文檔化”代碼的技巧
4.1 自文檔化的代碼
4.2 編寫自文檔化代碼的技術(shù)
4.2.1 使用好的樣式編寫簡單的代碼
4.2.2 選擇有意義的名稱
4.2.3 分解為原子函數(shù)
4.2.4 選擇描述性的類型
4.2.5 命名常量
4.2.6 強(qiáng)調(diào)重要的代碼
4.2.7 分組相關(guān)信息
4.2.8 提供文件頭
4.2.9 恰當(dāng)?shù)靥幚礤e誤
4.2.10 編寫有意義的注釋
4.3 實用的自文檔化方法
4.3.1 文學(xué)性編程
4.3.2 文檔化工具
4.4 總結(jié)
4.5 另請參見
4.6 思考
4.6.1 深入思考
4.6.2 結(jié)合自己
第5章 隨篇注釋:如何編寫代碼注釋
5.1 什么是代碼注釋
5.2 注釋看上去是什么樣的
5.3 多少注釋是恰當(dāng)?shù)?br />5.4 注釋中應(yīng)該有些什么
5.4.1 解釋為什么,而不是怎么樣
5.4.2 不要描述代碼
5.4.3 不要取代代碼
5.4.4 確保注釋有用
5.4.5 避免分心
5.5 實踐
5.6 從審美的角度看注釋
5.6.1 一致性
5.6.2 清晰的塊注釋
5.6.3 縮進(jìn)的注釋
5.6.4 行尾注釋
5.6.5 幫助你閱讀代碼
5.6.6 選擇一種維護(hù)成本較低的風(fēng)格
5.6.7 分隔板
5.6.8 標(biāo)志
5.6.9 文件頭注釋
5.7 使用注釋
5.7.1 幫助你編寫例行程序
5.7.2 錯誤修正通告
5.7.3 注釋過時
5.7.4 維護(hù)和空洞無物的注釋
5.8 總結(jié)
5.9 另請參見
5.10 思考
5.10.1 深入思考
5.10.2 結(jié)合自己
第6章 人非圣賢:處理不可避免的情況——代碼中的錯誤情形
6.1 從何而來
6.2 錯誤報告機(jī)制
6.2.1 不報告
6.2.2 返回值
6.2.3 錯誤狀態(tài)變量
6.2.4 異常
6.2.5 信號
6.3 檢測錯誤
6.4 處理錯誤
6.4.1 何時處理錯誤
6.4.2 可能的反應(yīng)
6.4.3 代碼示例
6.5 使地獄浮現(xiàn)
6.6 管理錯誤
6.7 總結(jié)
6.8 另請參見
6.9 思考
6.9.1 深入思考
6.9.2 結(jié)合自己
第2篇 代碼的神秘生命
第7章 欲善其事,先利其器:使用工具構(gòu)建軟件
7.1 什么是軟件工具
7.2 為什么要在意工具
7.3 使工具發(fā)揮作用
7.3.1 了解它能做些什么
7.3.2 學(xué)習(xí)如何駕馭它
7.3.3 了解它適合什么任務(wù)
7.3.4 檢查它是否可用
7.3.5 找到了解更多信息的途徑
7.3.6 查明新版本何時出現(xiàn)
7.4 哪個工具
7.4.1 源代碼編輯工具
7.4.2 代碼構(gòu)建工具
7.4.3 調(diào)試和調(diào)查工具
7.4.4 語言支持工具
7.4.5 其他工具
7.5 總結(jié)
7.6 另請參見
7.7 思考
7.7.1 深入思考
7.7.2 結(jié)合自己
第8章 測試時代:測試代碼的魔術(shù)
8.1 反思現(xiàn)實
8.2 誰、是什么、何時以及為什么
8.2.1 我們?yōu)槭裁匆獪y試
8.2.2 誰來進(jìn)行測試
8.2.3 測試的內(nèi)容有些什么
8.2.4 何時進(jìn)行測試
8.3 測試并不難……
8.4 測試的類型
8.5 選擇單元測試用例
8.6 為測試而設(shè)計
8.7 看!不要用手
8.8 面對故障該怎么辦
8.9 你能管理它嗎
8.9.1 缺陷跟蹤系統(tǒng)
8.9.2 bug審查
8.10 總結(jié)
8.11 另請參見
8.12 思考
8.12.1 深入思考
8.12.2 結(jié)合自己
第9章 尋找缺陷(調(diào)試):當(dāng)事情進(jìn)展得不順利時該怎么辦
9.1 生活的真相
9.2 bug的種類
9.2.1 從遠(yuǎn)處看
9.2.2 從近處看
9.2.3 從更近處看
9.3 消滅害蟲
9.3.1 地下之路
9.3.2 地上之路
9.4 搜尋bug
9.4.1 編譯時錯誤
9.4.2 運(yùn)行時錯誤
9.5 如何修正缺陷
9.6 預(yù)防
9.7 除蜂劑、驅(qū)蟲劑、捕蠅紙
9.7.1 調(diào)試器
9.7.2 內(nèi)存訪問校驗器
9.7.3 系統(tǒng)調(diào)用跟蹤
9.7.4 內(nèi)核轉(zhuǎn)儲
9.7.5 日志
9.8 總結(jié)
9.9 另請參見
9.10 思考
9.10.1 深入思考
9.10.2 結(jié)合自己
第10章 代碼構(gòu)建:將源代碼轉(zhuǎn)換為可執(zhí)行代碼的過程
10.1 語言障礙
10.1.1 解釋型語言
10.1.2 編譯型語言
10.1.3 字節(jié)編譯型語言
10.2 小題大做
10.3 構(gòu)建軟件版本
10.4 怎樣才算是一個優(yōu)秀的構(gòu)建系統(tǒng)
10.4.1 簡潔
10.4.2 一致
10.4.3 可重復(fù)和可靠
10.4.4 原子性
10.4.5 能夠應(yīng)付錯誤
10.5 技術(shù)細(xì)節(jié)
10.5.1 目標(biāo)的選擇
10.5.2 內(nèi)務(wù)處理
10.5.3 依賴關(guān)系
10.5.4 自動構(gòu)建
10.5.5 構(gòu)建配置
10.5.6 遞歸地使用make
10.6 請發(fā)布我吧
10.7 構(gòu)建大師是全能的嗎
10.8 總結(jié)
10.9 另請參見
10.10 思考
10.10.1 深入思考
10.10.2 結(jié)合自己
第11章 追求速度:優(yōu)化程序和編寫高效的代碼
11.1 優(yōu)化是什么
11.2 是什么使代碼不盡如人意
11.3 為什么不進(jìn)行優(yōu)化呢
11.4 為什么要進(jìn)行優(yōu)化
11.5 優(yōu)化的具體細(xì)節(jié)
11.5.1 證明你需要進(jìn)行優(yōu)化
11.5.2 找出運(yùn)行得最慢的代碼
11.5.3 測試代碼
11.5.4 優(yōu)化代碼
11.5.5 優(yōu)化之后
11.6 優(yōu)化的技術(shù)
11.6.1 設(shè)計更改
11.6.2 代碼更改
11.7 編寫高效的代碼
11.8 總結(jié)
11.9 另請參見
11.10 思考
11.10.1 深入思考
11.10.2 結(jié)合自己
第12章 不安全感綜合征:編寫安全的程序
12.1 危險
12.2 敵人
12.3 借口,都是借口
12.4 感到很脆弱
12.4.1 不安全的設(shè)計和體系結(jié)構(gòu)
12.4.2 緩沖溢出
12.4.3 嵌入的查詢字符串
12.4.4 競爭狀況
12.4.5 整數(shù)溢出
12.5 防范措施
12.5.1 系統(tǒng)安裝技術(shù)
12.5.2 軟件設(shè)計技術(shù)
12.5.3 代碼實現(xiàn)技術(shù)
12.5.4 規(guī)程技術(shù)
12.6 總結(jié)
12.7 另請參見
12.8 思考
12.8.1 深入思考
12.8.2 結(jié)合自己
第3篇 代碼的形成過程

本目錄推薦

掃描二維碼
Copyright ? 讀書網(wǎng) m.ranfinancial.com 2005-2020, All Rights Reserved.
鄂ICP備15019699號 鄂公網(wǎng)安備 42010302001612號