新書推薦:
《
形而上学与测量
》
售價:NT$
340.0
《
世界航母、舰载机图鉴 【日】坂本明
》
售價:NT$
340.0
《
量价关系——透视股票涨跌脉络
》
售價:NT$
340.0
《
创伤与记忆:身体体验疗法如何重塑创伤记忆 [美]彼得·莱文
》
售價:NT$
295.0
《
复原力
》
售價:NT$
345.0
《
近代中国思维方式的演变(王中江著作系列)
》
售價:NT$
950.0
《
我可以近乎孤独地度过一生
》
售價:NT$
440.0
《
二十四节气生活美学
》
售價:NT$
340.0
|
內容簡介: |
每個軟體開發者與IT專家都知道高效除錯的重要性。除錯通常佔據開發者大部分的時間,而掌握技巧需要一輩子的投入。作者DiomidisSpinellis在這本書中提供了系統化分類、解析說明、最有效的除錯方法、策略、技巧以及工具,協助有經驗的程式設計師加速掌握技能。
作者以超過三十五年以上的經驗幫助讀者擴展除錯技術,於各種情境選擇最佳方式。書中展示了大量通用原則、高階策略、扎實技巧、高效工具、創意絕招與行為軌跡的高效除錯範例。
Spinellis的66個具體作法討論除錯的各種面向,並以一步步的指示與實際程式碼進行說明。他討論了現代軟體系統中發生的各種問題,特別是元件間的複雜互動與分散於全球主機環境中執行的服務。
無論你正在處理個別的執行期錯誤或整個企業系統的災難,這本書都能幫助你快速無痛的完成任務。
關鍵內容包括:
處理各種問題的高階策略與方法
適用於程式設計、編譯與執行程式的特定技巧
更好的運用除錯工具
值得學習的通用技巧與工具
解決複雜謎團的進階點子與技巧
讓程式易於除錯的建議
多執行緒、非同步與嵌入程式除錯的特殊方式
改善軟體設計、建構與管理以避免錯誤
|
關於作者: |
DiomidisSpinellis
是AUEB的資管教授,專精於複雜系統的開發與除錯。他曾經任職於Google,擔任網站可靠性工程的資深軟體工程師;還在FreeBSD委員會服務過,對OSX與BSDUnix貢獻過程式;開發各種開源軟體,包括UMLGraph與CScout等。他的CodeReading與CodeQuality兩本書均榮獲SoftwareDevelopmentProductivityAward肯定。同時是AssociationforComputingMachinery與IEEE的資深成員。
|
目錄:
|
chapter01高階策略
作法01透過問題記錄系統處理所有問題
作法02以精確的關鍵字上網查詢問題的線索
作法03確認滿足前後條件
作法04從問題向上到錯誤或從程式的開始向下到錯誤
作法05找出新舊系統間的差異
作法06使用軟體的除錯設施
作法07建構與執行環境的多元化
作法08專注於最重要的問題
chapter02通用方法與實踐
作法09讓自己準備好
作法10有效的重複產生問題
作法11減少來回修改的時間
作法12複雜測試場合的自動化
作法13展示你的除錯資料
作法14更新你的軟體
作法15參考第三方原始碼
作法16使用專用監控與程式設備
作法17放大失敗的效應
作法18從你的桌面對遠端系統除錯
作法19除錯任務自動化
作法20除錯前後的清理工作
作法21修理有問題類別的所有實例
chapter03通用工具與技巧
作法22以Unix命令列工具分析除錯資料
作法23使用命令列工具選項
作法24以編輯器探索除錯資料
作法25工作環境最佳化
作法26以版本控制系統追獵錯誤的成因與歷史
作法27使用系統的獨立行程監控工具
chapter04除錯技巧
作法28使用符號除錯編譯的程式
作法29逐步執行程式
作法30使用程式與資料中斷點
作法31熟悉反向除錯
作法32沿著程序間的呼叫
作法33檢視變數與表達式的值以找尋錯誤
作法34知道如何將除錯工具附在行程上
作法35認識如何使用核心傾印
作法36調校你的除錯工具
作法37認識如何檢視組合語言程式碼與原始記憶體
chapter05程式設計技巧
作法38審核與手動執行可疑程式碼
作法39與同僚一起檢視你的程式碼
作法40加入除錯功能
作法41加入日誌記錄陳述
作法42使用單元測試
作法43使用斷言
作法44擾動程式以檢驗你的推論
作法45將可行與失敗程式間的差異最小化
作法46簡化可疑程式
作法47以其他語言重寫可疑的程式
作法48改善可疑程式碼的易讀性與結構
作法49治本而非治標
chapter06編譯期技巧
作法50檢視產生的程式碼
作法51使用靜態程式分析
作法52設定決定性建構與執行
作法53設定使用除錯函式庫
chapter07執行期技巧
作法54建構測試案例以找出問題
作法55盡快失敗
作法56檢視應用程式日誌檔案
作法57系統與行程操作的側寫
作法58追蹤程式執行
作法59使用動態程式分析工具
chapter08多執行緒程式除錯
作法60以剖析除錯分析死結
作法61擷取與複製
作法62以專用工具找出死結與競爭狀況
作法63隔離與移除不確定性
作法64檢視競爭以調查可擴展性問題
作法65以效能監視器找出假共用
作法66以高階抽象重寫程式
網路資源
索引
|
|