PDF
本書有DRM加密保護,需使用HyRead閱讀軟體開啟
  • Effective Debugging中文版:軟體與系統除錯的66個具體作法
  • 點閱:219
  • 譯自:Effectibe Debugging:66 specific ways to Debug software and systems
  • 作者: Diomidis Spinellis著 , 楊尊一譯
  • 出版社:碁峰資訊
  • 出版年:2017[民106]
  • ISBN:978-986-476-296-5;
  • 格式:PDF
  • 附註:原紙本書ISBN:978-986-476-251-4 版權頁題名: Debugging中文版 : 軟體與系統除錯的66個具體作法 含索引

內容簡介
 
每個軟體開發者與IT專家都知道高效除錯的重要性。除錯通常佔據開發者大部分的時間,而掌握技巧需要一輩子的投入。作者Diomidis Spinellis在這本書中提供了系統化分類、解析說明、最有效的除錯方法、策略、技巧以及工具,協助有經驗的程式設計師加速掌握技能。
 
作者以超過三十五年以上的經驗幫助讀者擴展除錯技術,於各種情境選擇最佳方式。書中展示了大量通用原則、高階策略、扎實技巧、高效工具、創意絕招與行為軌跡的高效除錯範例。

 
Spinellis的66個具體作法討論除錯的各種面向,並以一步步的指示與實際程式碼進行說明。他討論了現代軟體系統中發生的各種問題,特別是元件間的複雜互動與分散於全球主機環境中執行的服務。
 
無論你正在處理個別的執行期錯誤或整個企業系統的災難,這本書都能幫助你快速無痛的完成任務。
 
關鍵內容包括:
‧處理各種問題的高階策略與方法
‧適用於程式設計、編譯與執行程式的特定技巧
‧更好的運用除錯工具
‧值得學習的通用技巧與工具
‧解決複雜謎團的進階點子與技巧
‧讓程式易於除錯的建議
‧多執行緒、非同步與嵌入程式除錯的特殊方式
‧改善軟體設計、建構與管理以避免錯誤


作者簡介
 
Diomidis Spinellis
 
是AUEB的資管教授,專精於複雜系統的開發與除錯。他曾經任職於Google,擔任網站可靠性工程的資深軟體工程師;還在FreeBSD委員會服務過,對OS X與BSD Unix貢獻過程式;開發各種開源軟體,包括UMLGraph與CScout等。他的Code Reading與Code Quality兩本書均榮獲Software Development Productivity Award肯定。同時是Association for Computing Machinery與IEEE的資深成員。

  • 圖目錄(第ix頁)
  • 程式列目錄(第xi頁)
  • 前言(第xiii頁)
  • 致謝(第xix頁)
  • 關於作者(第xxiii頁)
  • 第 1 章 高階策略(第1頁)
    • 作法 01 透過問題記錄系統處理所有問題(第1頁)
    • 作法 02 以精確的關鍵字上網查詢問題的線索(第3頁)
    • 作法 03 確認滿足前後條件(第5頁)
    • 作法 04 從問題向上到錯誤或從程式的開始向下到錯誤(第6頁)
    • 作法 05 找出新舊系統間的差異(第8頁)
    • 作法 06 使用軟體的除錯設施(第10頁)
    • 作法 07 建構與執行環境的多元化(第14頁)
    • 作法 08 專注於最重要的問題(第17頁)
  • 第 2 章 通用方法與實踐(第19頁)
    • 作法 09 讓自己準備好(第19頁)
    • 作法 10 有效的重複產生問題(第21頁)
    • 作法 11 減少來回修改的時間(第23頁)
    • 作法 12 複雜測試場合的自動化(第24頁)
    • 作法 13 展示你的除錯資料(第27頁)
    • 作法 14 更新你的軟體(第28頁)
    • 作法 15 參考第三方原始碼(第29頁)
    • 作法 16 使用專用監控與程式設備(第31頁)
    • 作法 17 放大失敗的效應(第33頁)
    • 作法 18 從你的桌面對遠端系統除錯(第35頁)
    • 作法 19 除錯任務自動化(第37頁)
    • 作法 20 除錯前後的清理工作(第38頁)
    • 作法 21 修理有問題類別的所有實例(第39頁)
  • 第 3 章 通用工具與技巧(第41頁)
    • 作法 22 以 Unix 命令列工具分析除錯資料(第41頁)
    • 作法 23 使用命令列工具選項(第46頁)
    • 作法 24 以編輯器探索除錯資料(第48頁)
    • 作法 25 工作環境最佳化(第50頁)
    • 作法 26 以版本控制系統追獵錯誤的成因與歷史(第54頁)
    • 作法 27 使用系統的獨立行程監控工具(第57頁)
  • 第 4 章 除錯技巧(第61頁)
    • 作法 28 使用符號除錯編譯的程式(第61頁)
    • 作法 29 逐步執行程式(第65頁)
    • 作法 30 使用程式與資料中斷點(第66頁)
    • 作法 31 熟悉反向除錯(第69頁)
    • 作法 32 沿著程序間的呼叫(第71頁)
    • 作法 33 檢視變數與表達式的值以找尋錯誤(第73頁)
    • 作法 34 知道如何將除錯工具附在行程上(第75頁)
    • 作法 35 認識如何使用核心傾印(第77頁)
    • 作法 36 調校你的除錯工具(第79頁)
    • 作法 37 認識如何檢視組合語言程式碼與原始記憶體(第83頁)
  • 第 5 章 程式設計技巧(第87頁)
    • 作法 38 審核與手動執行可疑程式碼(第87頁)
    • 作法 39 與同僚一起檢視你的程式碼(第89頁)
    • 作法 40 加入除錯功能(第90頁)
    • 作法 41 加入日誌記錄陳述(第93頁)
    • 作法 42 使用單元測試(第97頁)
    • 作法 43 使用斷言(第100頁)
    • 作法 44 擾動程式以檢驗你的推論(第103頁)
    • 作法 45 將可行與失敗程式間的差異最小化(第104頁)
    • 作法 46 簡化可疑程式(第105頁)
    • 作法 47 以其他語言重寫可疑的程式(第108頁)
    • 作法 48 改善可疑程式碼的易讀性與結構(第109頁)
    • 作法 49 治本而非治標(第112頁)
  • 第 6 章 編譯期技巧(第115頁)
    • 作法 50 檢視產生的程式碼(第115頁)
    • 作法 51 使用靜態程式分析(第118頁)
    • 作法 52 設定決定性建構與執行(第122頁)
    • 作法 53 設定使用除錯函式庫(第125頁)
  • 第 7 章 執行期技巧(第131頁)
    • 作法 54 建構測試案例以找出問題(第131頁)
    • 作法 55 盡快失敗(第135頁)
    • 作法 56 檢視應用程式日誌檔案(第136頁)
    • 作法 57 系統與行程操作的側寫(第140頁)
    • 作法 58 追蹤程式執行(第143頁)
    • 作法 59 使用動態程式分析工具(第148頁)
  • 第 8 章 多執行緒程式除錯(第151頁)
    • 作法 60 以剖析除錯分析死結(第151頁)
    • 作法 61 擷取與複製(第157頁)
    • 作法 62 以專用工具找出死結與競爭狀況(第162頁)
    • 作法 63 隔離與移除不確定性(第168頁)
    • 作法 64 檢視競爭以調查可擴展性問題(第169頁)
    • 作法 65 以效能監視器找出假共用(第172頁)
    • 作法 66 以高階抽象重寫程式(第176頁)
  • 網路資源(第185頁)
  • 索引(第189頁)
紙本書 NT$ 450
單本電子書
NT$ 315

還沒安裝 HyRead 3 嗎?馬上免費安裝~
QR Code