注冊 | 登錄讀書好,好讀書,讀好書!
讀書網(wǎng)-DuShu.com
當前位置: 首頁出版圖書科學技術(shù)計算機/網(wǎng)絡(luò)軟件工程及軟件方法學Effective Debugging:軟件和系統(tǒng)調(diào)試的66個有效方法

Effective Debugging:軟件和系統(tǒng)調(diào)試的66個有效方法

Effective Debugging:軟件和系統(tǒng)調(diào)試的66個有效方法

定 價:¥59.00

作 者: (希)迪歐米迪斯·斯賓奈里斯(Diomidis,Spinellis)
出版社: 機械工業(yè)出版社
叢編項:
標 簽: 暫缺

ISBN: 9787111568896 出版時間: 2017-06-01 包裝:
開本: 頁數(shù): 字數(shù):  

內(nèi)容簡介

  本書共分8章。首先講解調(diào)試策略(第1章)、調(diào)試方法(第2章)以及調(diào)試時所用的工具與技巧(第3章),這些知識使我們能夠應(yīng)對各種軟件故障及系統(tǒng)故障。接下來討論在調(diào)試工作的各個階段所用到的具體技巧,也就是在使用調(diào)試器(第4章)、編寫程序(第5章)、編譯軟件(第6章)以及運行系統(tǒng)(第7章)時所用到的調(diào)試技巧。與多線程和并發(fā)有關(guān)的bug是很難尋找的,所以本書后專門用一章(第8章)來講解特定的調(diào)試工具及調(diào)試技術(shù),使大家能夠找出這些bug。

作者簡介

暫缺《Effective Debugging:軟件和系統(tǒng)調(diào)試的66個有效方法》作者簡介

圖書目錄


Contents 目  錄
譯者序
前言
致謝
第1章 宏觀策略 1
第1條:通過事務(wù)追蹤系統(tǒng)處理所有的問題 1
第2條:在網(wǎng)上確切地查詢你所遇到的問題,以尋求解決問題的靈感 4
第3條:確保前置條件與后置條件都能夠得到滿足 6
第4條:從具體問題入手向上追查bug,或從高層程序入手向下追查bug 7
第5條:在能夠正常運作的系統(tǒng)與發(fā)生故障的系統(tǒng)之間尋找差別 9
第6條:使用軟件自身的調(diào)試機制 13
第7條:試著用多種工具構(gòu)建軟件,并將其放在不同的環(huán)境下執(zhí)行 16
第8條:把工作焦點放在最為重要的問題上 20
第2章 通用的方法與做法 23
第9條:相信自己能夠把問題調(diào)試好 23
第10條:高效地重現(xiàn)程序中的問題 26
第11條:修改完代碼之后,要能夠盡快看到結(jié)果 29
第12條:將復雜的測試場景自動化 30
第13條:使自己盡可能多地觀察到與調(diào)試有關(guān)的數(shù)據(jù) 32
第14條:考慮對軟件進行更新 34
第15條:查看第三方組件的源代碼,以了解其用法 35
第16條:使用專門的監(jiān)測及測試設(shè)備 37
第17條:使故障更加突出 40
第18條:從自己的桌面計算機上調(diào)試那些不太好用的系統(tǒng) 42
第19條:使調(diào)試任務(wù)自動化 44
第20條:開始調(diào)試之前與調(diào)試完畢之后都要把程序清理干凈 46
第21條:把屬于同一個類型的所有問題全都修復好 47
第3章 通用的工具與技術(shù) 49
第22條:用Unix命令行工具對調(diào)試數(shù)據(jù)進行分析 49
第23條:掌握命令行工具的各種選項及習慣用法 55
第24條:用編輯器對調(diào)試程序時所需的數(shù)據(jù)進行瀏覽 57
第25條:優(yōu)化工作環(huán)境 59
第26條:用版本控制系統(tǒng)尋找bug發(fā)生的原因及經(jīng)過 64
第27條:用工具監(jiān)測由多個獨立程序所構(gòu)成的系統(tǒng) 67
第4章 調(diào)試器的使用技巧 71
第28條:編譯代碼時把符號信息包含進來,以便于調(diào)試 72
第29條:對代碼進行單步調(diào)試 76
第30條:設(shè)置代碼斷點和數(shù)據(jù)斷點 77
第31條:了解反向調(diào)試功能 80
第32條:查看例程之間的相互調(diào)用情況 83
第33條:查看變量及表達式的值,以尋找程序中的錯誤 84
第34條:了解怎樣把調(diào)試器連接到正在運行的進程上 87
第35條:了解怎樣運用核心轉(zhuǎn)儲信息來進行調(diào)試 89
第36條:把調(diào)試工具設(shè)置好 92
第37條:學會查看匯編代碼及原始內(nèi)存 95
第5章 編程技術(shù) 100
第38條:對可疑的代碼進行評審,并手工演練這些代碼 100
第39條:審讀代碼并與同事討論 102
第40條:給軟件添加調(diào)試機制 103
第41條:添加日志語句 107
第42條:對軟件進行單元測試 111
第43條:用斷言進行調(diào)試 114
第44條:改動受測程序,以驗證自己的推想 118
第45條:盡量縮小正確范例與錯誤代碼之間的差距 119
第46條:簡化可疑代碼 120
第47條:將可疑代碼改用另外一種編程語言來寫 123
第48條:改善可疑代碼的可讀性與結(jié)構(gòu) 124
第49條:要清除bug的根源,而不僅僅消除其癥狀 128
第6章 編譯時的調(diào)試技術(shù) 130
第50條:對生成的代碼進行檢視 130
第51條:使用靜態(tài)程序分析工具 133
第52條:對項目進行配置,令程序能夠以固定的方式構(gòu)建和執(zhí)行 138
第53條:對調(diào)試所用程序庫及構(gòu)建代碼時所應(yīng)執(zhí)行的檢查進行配置 141
第7章 運行時的調(diào)試技術(shù) 147
第54條:通過構(gòu)建測試用例來尋找錯誤 147
第55條:令軟件在遇到問題時盡早退出 151
第56條:檢視應(yīng)用程序的日志文件 152
第57條:對系統(tǒng)和進程所執(zhí)行的操作進行性能評測 156
第58條:追蹤程序的執(zhí)行情況 160
第59條:使用動態(tài)程序分析工具 166
第8章 調(diào)試多線程的代碼 169
第60條:通過事后調(diào)試來分析死鎖問題 169
第61條:捕獲并重現(xiàn) 176
第62條:用專門的工具來探查死鎖與競爭條件問題 180
第63條:把不確定的因素隔離出來,或?qū)⑵湟瞥? 186
第64條:檢查資源爭用情況,以解決與可伸縮性有關(guān)的問題 188
第65條:用性能計數(shù)器尋找偽共享問題 191
第66條:考慮用更為高級的抽象機制來重寫代碼 195
網(wǎng)上資源 203

本目錄推薦

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