Effective Debugging:調試軟件和系統的66個有效方法 Effective Debugging: 66 Specific Ways to Debug Software and Systems
[希]迪歐米迪斯·斯賓奈裡斯(Diomidis Spinellis)
- 出版商: 人民郵電
- 出版日期: 2025-01-01
- 定價: $479
- 售價: 7.9 折 $378
- 語言: 簡體中文
- 頁數: 176
- ISBN: 7115651957
- ISBN-13: 9787115651952
-
相關分類:
Unit Test 單元測試
- 此書翻譯自: Effective Debugging: 66 Specific Ways to Debug Software and Systems (Paperback)
-
相關翻譯:
Effective Debugging 中文版 | 軟體與系統除錯的 66 個具體作法 (Effective Debugging: 66 Specific Ways to Debug Software and Systems) (書況略舊,不介意在下單) (繁中版)
立即出貨
買這商品的人也買了...
-
編譯原理, 2/e (Compilers : Principles, Techniques, and Tools, 2/e)$534$507 -
$414面向模式的軟件架構(捲1)-模式系統 (Pattern-Oriented Software Architecture Volume 1: A System of Patterns) -
TCP/IP網絡編程$474$450 -
逆向工程核心原理$779$740 -
$179C語言解惑 -
深入理解計算機系統, 3/e (Computer Systems: A Programmer's Perspective, 3/e)$834$792 -
$232深入理解Python特性 -
Python 技術者們 - 練功!老手帶路教你精通正宗 Python 程式 (The Quick Python Book, 3/e)$780$663 -
$232C陷阱與缺陷 -
Python 功力提升的樂趣|寫出乾淨程式碼的最佳實務 (Beyond the Basic Stuff with Python)$500$395 -
硬件安全:從 SoC 設計到系統級防禦$834$792 -
劍指 Offer:數據結構與算法名企面試題精講 (專項突破版)$534$507 -
Python 不廢話,一行程式碼|像高手般寫出簡潔有力的 Python 程式碼 (Python One-Liners: Write Concise, Eloquent Python Like a Professional)$450$356 -
$654構建高性能嵌入式系統 -
精通無瑕程式碼:工程師也能斷捨離!消除複雜度、提升效率的 17個關鍵技法 (The Art of Clean Code: Best Practices to Eliminate Complexity and Simplify Your Life)$600$396 -
左耳聽風:傳奇程序員練級攻略$528$502 -
Python 風格徹底研究|超詳實、好理解的 Python 必學主題 (Dead Simple Python)$980$774 -
SoC 設計基礎教程 — 技術實現$648$616 -
C語言最佳實踐$599$569 -
SoC 設計高級教程 — 系統架構$768$730 -
SoC 設計高級教程 — 技術實現$768$730 -
Git 高效實踐$654$621 -
eBPF 開發指南從原理到應用$659$626 -
版本控制使用 Git, 3/e (Version Control with Git: Powerful Tools and Techniques for Collaborative Software Development, 3/e)$880$695 -
硬件系統模糊測試:技術揭秘與案例剖析$419$398
中文年末書展|繁簡參展書2書75折 詳見活動內容 »
-
75折
為你寫的 Vue Components:從原子到系統,一步步用設計思維打造面面俱到的元件實戰力 (iThome 鐵人賽系列書)$780$585 -
75折
BDD in Action, 2/e (中文版)$960$720 -
75折
看不見的戰場:社群、AI 與企業資安危機$750$563 -
79折
AI 精準提問 × 高效應用:DeepSeek、ChatGPT、Claude、Gemini、Copilot 一本搞定$390$308 -
7折
超實用!Word.Excel.PowerPoint 辦公室 Office 365 省時高手必備 50招, 4/e (暢銷回饋版)$420$294 -
75折
裂縫碎光:資安數位生存戰$550$412 -
日本當代最強插畫 2025 : 150位當代最強畫師豪華作品集$640$576 -
79折
Google BI 解決方案:Looker Studio × AI 數據驅動行銷實作,完美整合 Google Analytics 4、Google Ads、ChatGPT、Gemini$630$498 -
79折
超有料 Plus!職場第一實用的 AI 工作術 - 用對 AI 工具、自動化 Agent, 讓生產力全面進化!$599$473 -
75折
從零開始學 Visual C# 2022 程式設計, 4/e (暢銷回饋版)$690$518 -
75折
Windows 11 制霸攻略:圖解 AI 與 Copilot 應用,輕鬆搞懂新手必學的 Windows 技巧$640$480 -
75折
精準駕馭 Word!論文寫作絕非難事 (好評回饋版)$480$360 -
Sam Yang 的插畫藝術:用 Procreate / PS 畫出最強男友視角 x 女孩美好日常$699$629 -
79折
AI 加持!Google Sheets 超級工作流$599$473 -
78折
想要 SSR? 快使用 Nuxt 吧!:Nuxt 讓 Vue.js 更好處理 SEO 搜尋引擎最佳化(iThome鐵人賽系列書)$780$608 -
78折
超實用!業務.總管.人資的辦公室 WORD 365 省時高手必備 50招 (第二版)$500$390 -
7折
Node-RED + YOLO + ESP32-CAM:AIoT 智慧物聯網與邊緣 AI 專題實戰$680$476 -
79折
「生成式⇄AI」:52 個零程式互動體驗,打造新世代人工智慧素養$599$473 -
7折
Windows APT Warfare:惡意程式前線戰術指南, 3/e$720$504 -
75折
我輩程式人:回顧從 Ada 到 AI 這條程式路,程式人如何改變世界的歷史與未來展望 (We, Programmers: A Chronicle of Coders from Ada to AI)$850$637 -
75折
不用自己寫!用 GitHub Copilot 搞定 LLM 應用開發$600$450 -
79折
Tensorflow 接班王者:Google JAX 深度學習又快又強大 (好評回饋版)$780$616 -
79折
GPT4 會你也會 - 共融機器人的多模態互動式情感分析 (好評回饋版)$700$553 -
79折
技術士技能檢定 電腦軟體應用丙級術科解題教本|Office 2021$460$363 -
75折
Notion 與 Notion AI 全能實戰手冊:生活、學習與職場的智慧策略 (暢銷回饋版)$560$420
相關主題
商品描述
本書分為8章,共包含66個條目。本書首先講解了調試策略(第1章)、調試方法(第2章)以及調試時所用的工具與技術(第3章),旨在幫助讀者調試各類軟件故障和系統故障。緊接著介紹了可應用於調試工作各階段的技術,涵蓋使用調試器(第4章)、編寫程序(第5章)、編譯軟件(第6章)和運行系統(第7章)等階段。本書最後一章(第8章)專註於介紹一些特定的調試工具和調試技術,這些工具和技術用於定位多線程和並發代碼中那些棘手的bug。
作者簡介
迪歐米迪斯·斯賓奈裡斯(Diomidis Spinellis)是希臘雅典經濟與商業大學管理科學與技術系教授。他的研究涵蓋軟件工程、IT安全和雲系統工程。他撰寫了兩本屢獲殊榮的技術圖書,《代碼閱讀方法與實踐》(Code Reading: The Open Source Perspective)和《高質量程序設計藝術》(Code Quality: The Open Source Perspective)。他曾是IEEE Software雜誌編輯委員會成員長達十年之久,並定期為“Tools of the Trade”專欄撰稿。他不僅為OS X和BSD UNIX貢獻過代碼,還是UMLGraph、CScout和其他一些開源的軟件包、庫和工具的開發者。他擁有英國帝國理工學院的軟件工程碩士和計算機科學博士學位。他是ACM和IEEE的高級會員。在2015至2018年期間,他一直擔任IEEE Software雜誌主編。
目錄大綱
第 1 章 宏觀策略 1
條目 1:通過問題跟蹤系統處理所有問題 1
條目 2:使用有針對性的查詢在網上搜索與問題相關的見解 3
條目 3:確認前置條件和後置條件均已滿足 5
條目 4:從問題入手,自下而上追查 bug;從程序開始,自上而下追查 bug 6
條目 5:尋找正常系統和故障系統之間的差異 8
條目 6:使用軟件自帶的調試工具 10
條目 7:多樣化你的構建和執行環境 14
條目 8:將工作重點放在最重要的問題上 17
第 2 章 通用方法與實踐 20
條目 9:為調試的成功做好準備工作 20
條目 10:確保問題能夠高效重現 22
條目 11:盡可能縮短從做出修改到看到結果的時間 24
條目 12:將復雜的測試場景自動化 25
條目 13:盡量比較全面地將調試數據展示出來 27
條目 14:考慮更新軟件 29
條目 15:查閱第三方軟件的源代碼,深入瞭解其正確使用方式 30
條目 16:使用專門的監控和測試設備 32
條目 17:讓故障的影響凸顯出來 34
2 目錄
條目 18:支持在自己的桌面上調試復雜系統 36
條目 19:將調試任務自動化 38
條目 20:在調試前後做好清理工作 39
條目 21:修復所有犯同樣錯誤的代碼 40
第 3 章 通用工具與技術 42
條目 22:使用 UNIX 命令行工具分析調試數據 42
條目 23:命令行工具的各種選項和習慣用法 47
條目 24:用編輯器研究調試數據 49
條目 25:優化你的工作環境 51
條目 26:使用版本控制系統追蹤 bug 的原因和歷史 55
條目 27:使用監控工具處理包含多個獨立進程的系統 57
第 4 章 調試器使用技巧 61
條目 28:編譯代碼時啟用符號調試 61
條目 29:單步執行代碼 65
條目 30:使用代碼和數據斷點 66
條目 31:熟悉反向調試 68
條目 32:沿著例程之間的調用關系尋找問題 71
條目 33:通過檢查變量和表達式的值查找錯誤 72
條目 34:將調試器附加到正在運行的進程上 74
條目 35:處理核心轉儲文件 77
條目 36:配置優化自己的調試工具 79
條目 37:查看匯編代碼和原始內存 82
第 5 章 編程技巧 86
條目 38:審查並手動執行可疑代碼 86
條目 39:與同事一起審查代碼並推理問題 88
目錄 3
條目 40:添加調試功能 89
條目 41:添加日誌語句 92
條目 42:使用單元測試 96
條目 43:使用斷言 99
條目 44:通過擾動被調試程序來驗證自己的假設 101
條目 45:盡量縮小可以正常工作的示例和故障代碼之間的差異 102
條目 46:簡化可疑代碼 103
條目 47:考慮用另一種語言重寫可疑代碼 106
條目 48:改進可疑代碼的可讀性和結構 107
條目 49:從根源上解決問題,而不是解決表象 110
第 6 章 編譯時技術 112
條目 50:檢查生成的代碼 112
條目 51:使用靜態程序分析工具 115
條目 52:通過配置保證構建和執行的確定性 119
條目 53:對調試庫和所執行的檢查進行配置 121
第 7 章 運行時技術 126
條目 54:通過構建測試用例來找到錯誤 126
條目 55:快速失敗 130
條目 56:檢查應用程序的日誌文件 131
條目 57:剖析系統和進程的運行情況 134
條目 58:跟蹤代碼的執行 138
條目 59:使用動態程序分析工具 142
第 8 章 調試多線程代碼 145
條目 60:利用事後調試分析死鎖 145
條目 61:捕獲和重現 151
4 目錄
條目 62:借助專用工具來發現死鎖和競爭條件 156
條目 63:隔離並消除非確定性 161
條目 64:通過觀察資源競爭情況來研究可伸縮性問題 163
條目 65:使用性能計數器定位偽共享 166
條目 66:考慮使用更高級別的抽象重寫代碼 169


