小心沒(méi)大錯(cuò)!新手程序員排錯(cuò)指南
定 價(jià):39.8 元
叢書(shū)名:青少年編程與人工智能啟蒙
- 作者:魯尚文
- 出版時(shí)間:2025/1/1
- ISBN:9787030799678
- 出 版 社:科學(xué)出版社
- 中圖法分類(lèi):TP311.1-62
- 頁(yè)碼:178
- 紙張:
- 版次:1
- 開(kāi)本:A5
排查故障是困擾新手程序員的主要問(wèn)題之一。本書(shū)旨在幫助新手程序員消除對(duì)代碼錯(cuò)誤的抵觸情緒,提升解決故障的能力,同時(shí)掌握編寫(xiě)高質(zhì)量程序的方法。
本書(shū)共分為6章,通過(guò)漫畫(huà)導(dǎo)讀和豐富的示例,生動(dòng)剖析了新手程序員對(duì)代碼錯(cuò)誤產(chǎn)生抵觸情緒的原因,詳細(xì)介紹了錯(cuò)誤信息的閱讀方法及程序員在編程過(guò)程中可能遇到的各種代碼錯(cuò)誤,直觀(guān)講解了高效排查故障的策略、利用工具簡(jiǎn)化調(diào)試流程的方法、應(yīng)對(duì)復(fù)雜代碼故障的技巧,以及編寫(xiě)易于調(diào)試代碼的方法。
更多科學(xué)出版社服務(wù),請(qǐng)掃碼獲取。
本科 空間物理學(xué) 2011年7月 北京大學(xué)
碩士研究生 空間物理學(xué) 2014年7月 北京大學(xué)
博士研究生 空間物理學(xué) 2019年7月 中國(guó)科學(xué)院大學(xué)2019-2022半比特科技(北京)有限公司,CTO
2022-中國(guó)科學(xué)院地理科學(xué)與資源研究所,項(xiàng)目經(jīng)理地球空間信息科學(xué),數(shù)字圖像處理,數(shù)據(jù)分析
目錄
第1章 為什么錯(cuò)誤信息令人抵觸
1.1 學(xué)習(xí)如何閱讀錯(cuò)誤信息 4
1.2 錯(cuò)誤信息難以閱讀的原因 8
1.2.1 錯(cuò)誤信息是用英文表述的 8
1.2.2 錯(cuò)誤信息冗長(zhǎng) 14
1.2.3 無(wú)法從錯(cuò)誤信息中找到根本原因 16
1.3 為面對(duì)代碼錯(cuò)誤做好準(zhǔn)備 22
1.3.1 放松心態(tài) 22
1.3.2 難解決的代碼錯(cuò)誤是學(xué)習(xí)的機(jī)會(huì) 22
1.3.3 掌握閱讀錯(cuò)誤信息的技巧23
第2章 高效閱讀錯(cuò)誤信息的方法
2.1 了解錯(cuò)誤信息的組成部分 28
2.1.1 錯(cuò)誤類(lèi)別 29
2.1.2 錯(cuò)誤描述 31
2.1.3 堆棧跟蹤 31
2.2 了解錯(cuò)誤類(lèi)別41
2.2.1 SyntaxError 42
2.2.2 ReferenceError 43
2.2.3 TypeError 44
2.2.4 RangeError 46
2.2.5 其他編程語(yǔ)言環(huán)境中的錯(cuò)誤類(lèi)別 47
第3章 如何高效排查故障
3.1 什么是調(diào)試 52
3.2 打印調(diào)試 55
3.2.1 使用打印調(diào)試解決故障的示例 57
3.2.2 跟蹤代碼路徑排查故障 60
3.3 二分搜索 62
3.3.1 什么是二分搜索62
3.3.2 二分搜索與打印調(diào)試相結(jié)合 64
3.3.3 確定引發(fā)代碼錯(cuò)誤的真正位置 69
3.3.4 對(duì)大型單元使用二分搜索74
3.4 最小可復(fù)現(xiàn)示例 78
3.5 關(guān)于提高調(diào)試效率的幾點(diǎn)思考 83
3.5.1 事先提出假設(shè) 83
3.5.2 每次只驗(yàn)證一個(gè)假設(shè) 84
3.5.3 靈活提出并驗(yàn)證假設(shè) 85
3.5.4 不遺余力 85
第4章 利用工具簡(jiǎn)化調(diào)試
4.1 調(diào)試的有力工具—調(diào)試器 90
4.2 斷點(diǎn)功能 92
4.2.1 什么是斷點(diǎn) 92
4.2.2 斷點(diǎn)的設(shè)置方法93
4.2.3 使用斷點(diǎn)進(jìn)行調(diào)試 96
4.3 單步調(diào)試功能 107
4.3.1 單步跳入 107
4.3.2 單步跳過(guò) 109
4.3.3 單步跳出 110
4.3.4 單步調(diào)試的使用場(chǎng)景 112
4.4 條件斷點(diǎn)功能 113
4.4.1 使用條件斷點(diǎn)進(jìn)行調(diào)試 114
4.4.2 瀏覽器內(nèi)置條件斷點(diǎn) 117
4.5 監(jiān)視變量功能 118
第5章 如何應(yīng)對(duì)難以解決的代碼故障
5.1 收集信息的技巧 124
5.1.1 使用搜索引擎檢索信息的技巧 124
5.1.2 使用GitHub檢索信息的技巧 127
5.1.3 在社區(qū)提問(wèn) 131
5.1.4 讀取主要信息 133
5.2 沒(méi)有錯(cuò)誤信息時(shí)如何解決故障 136
5.2.1 檢查的位置不正確 136
5.2.2 未檢查錯(cuò)誤信息的相關(guān)輸出配置 138
5.2.3 錯(cuò)誤被異常處理機(jī)制捕獲 140
5.3 如何解決無(wú)法復(fù)現(xiàn)的故障 142
5.4 生產(chǎn)環(huán)境中的錯(cuò)誤信息 144
5.4.1 錯(cuò)誤信息的收集方法 144
5.4.2 日志管理技術(shù)的發(fā)展 145
第6章 編寫(xiě)便于調(diào)試的代碼
6.1 避免不必要的重新賦值 152
6.1.1 限制重新賦值的機(jī)制 154
6.1.2 限制重新賦值對(duì)調(diào)試的幫助 154
6.2 盡量縮小變量的作用域 157
6.3 了解單一責(zé)任原則 160
6.4 認(rèn)識(shí)和使用純函數(shù) 163
6.4.1 什么是純函數(shù) 163
6.4.2 純函數(shù)和非純函數(shù)的比較 165
6.4.3 如何利用純函數(shù) 167
6.5 編寫(xiě)類(lèi)型明確的代碼 168
6.5.1 通過(guò)注釋標(biāo)明類(lèi)型 169
6.5.2 利用編程語(yǔ)言的特性附加類(lèi)型信息 170
6.6 編寫(xiě)有助于調(diào)試的測(cè)試代碼 173
6.6.1 測(cè)試代碼示例 173
6.6.2 測(cè)試代碼和調(diào)試的關(guān)系 175
6.6.3 發(fā)生故障時(shí),編寫(xiě)測(cè)試代碼 176
后記 177