注冊 | 登錄讀書好,好讀書,讀好書!
讀書網(wǎng)-DuShu.com
當前位置: 首頁出版圖書科學(xué)技術(shù)計算機/網(wǎng)絡(luò)計算機輔助設(shè)計與工程計算UGJava Bug模式詳解

Java Bug模式詳解

Java Bug模式詳解

定 價:¥25.00

作 者: (美)Eric Allen著;王蕾譯;王蕾譯
出版社: 清華大學(xué)出版社
叢編項:
標 簽: Java

ISBN: 9787302074434 出版時間: 2003-11-01 包裝: 平裝
開本: 26cm 頁數(shù): 186 字數(shù):  

內(nèi)容簡介

  本書特點:● 把軟件開發(fā)的調(diào)試過程與極限編程方法融為一體● 對軟件實例進行深層次的剖析● 為常見的調(diào)試問題提供便捷的參考清單本書著重討論和日常編程工作息息相關(guān)的JavaBug模式。Bug模式是一種非常實用的概念,它能提高用戶檢測和修正代碼錯誤的能力。 本書共分為三個部分:第I部分是有關(guān)Bug模式的理論基礎(chǔ),介紹Bug模式的基本概念及應(yīng)用這種方法的意義所在:第II部分是對最為常見的13種Bug模式的詳細講解,從中可以學(xué)會如何識別、預(yù)防這些典型Bug的方法;第III部分通過表格的形式對全書內(nèi)容進行了總結(jié)。本書適合于希望通過利用Bug模式來提高代碼質(zhì)量和效率的開發(fā)工程師和編程愛好者。 本書是關(guān)于計算機程序診斷和調(diào)試的方法論,它把調(diào)試過程描述為科學(xué)方法的一種完美體現(xiàn)。調(diào)試是人們?nèi)菀纵p視的一項任務(wù)。調(diào)試技能完全獨立于其他編程技能,如程序的擴展性設(shè)計和軟件重用。Eric Allen專注于調(diào)試的理論,研究調(diào)試與軟件開發(fā)周期的其他階段的相關(guān)性。他特別強調(diào)了單元測試對于實際調(diào)試過程的重要性。同時,Allen還指出,雖然測試和調(diào)試往往同步執(zhí)行,但它們卻是截然不同的兩項工作。本書的第一部分奠定了全書的理論基礎(chǔ)。第二部分詳述在編程過程中會頻繁出現(xiàn)的各種類型的bug模式。對于每一種模式,Allen都對它的特征、處理方法和預(yù)防措施進行了講解。Bug模式出現(xiàn)的頻率越高,被診斷和有效消除的可能性就越大。本書的最后部分為可能出現(xiàn)的問題和解決方案提供了一個參考清單,并為Java開發(fā)人員提供了各種資源,包括Web站點、設(shè)計工具和參考書目。

作者簡介

  Eric Allen畢業(yè)于Cornell大學(xué),獲得計算機科學(xué)和數(shù)學(xué)的學(xué)士學(xué)位。他是Java World上Java初學(xué)者論壇的主持人,也是Rice大學(xué)Java編程語言小組的博士研究生。他的研究涉及在源程序和字節(jié)碼層次方面的語義模型和靜態(tài)分析工具。目前,他正在為NextGen編程語言(具備更多功能的Java語言擴展)實現(xiàn)編譯器。

圖書目錄

第1章 混亂環(huán)境下的靈活方法
    
1.1 軟件設(shè)計.實現(xiàn)和維護的趨勢
    
1.1.1 對于穩(wěn)定.安全系統(tǒng)的需求增加
    
1.1.2 傳統(tǒng)軟件工程技術(shù)的局限性
    
1.1.3 開放源代碼的軟件項目的可利用性
    
1.1.4 對于跨平臺語言的需求
    
1.2 在快節(jié)奏的社會中學(xué)習
    
1.3 bug模式簡述
    
1.4 小結(jié)
    
     第2章 Bug.規(guī)范和實現(xiàn)方案
    
2.1 bug的概念
    
2.2 一體性規(guī)范
    
2.2.1 C++
    
2.2.2 Python
    
2.2.3 ML
    
2.2.4 Pascal
    
2.3 規(guī)范的好處
    
2.4 實現(xiàn)方案與規(guī)范的差異
    
2.5 利用素材建立經(jīng)濟有效的規(guī)范
    
2.5.1 通過測試來排除規(guī)范錯誤
    
2.5.2 單元測試的缺陷
    
2.6 小結(jié)
    
     第3章 調(diào)試和開發(fā)過程
    
3.1 將調(diào)試當作科學(xué)試驗
    
3.1.1 逐步規(guī)范化.整合并發(fā)行軟件
    
3.1.2 在設(shè)計上盡可能保持簡單
    
3.1.3 結(jié)對編程
    
3.1.4 及時的客戶反饋
    
3.1.5 所有開發(fā)人員共享程序代碼
    
3.1.6 對任何可能產(chǎn)生問題的代碼進行測試
    
3.2 將調(diào)試測試程序并入到單元測試集
    
3.3 展望:面向測試的語言
    
3.4 小結(jié)
    
     第4章 調(diào)試和測試過程
    
4.1 可測試的設(shè)計模式
    
4.1.1 在模型中而不是視圖中保管代碼
    
4.1.2 使用靜態(tài)類型檢查發(fā)現(xiàn)錯誤
    
4.1.3 使用中介器封裝跨越斷層線的功能
    
4.1.4 編寫帶有簡短簽名和默認參數(shù)的方法
    
4.1.5 使用不修改內(nèi)存狀態(tài)的存取器
    
4.1.6 通過接口定義程序外組件
    
4.1.7 優(yōu)先編寫測試程序
    
4.2 GlobalModel接口
    
4.3 小結(jié)
    
     第5章 科學(xué)的調(diào)試方法
    
5.1 軟件是永不磨損的機器
    
5.1.1 軟件有多重
    
5.1.2 小異常引起大問題
    
5.2 Bug模式可以加快診斷bug的速度
    
5.3 小結(jié)
    
     第6章 關(guān)于bug模式
    
6.1 了解bug模式的重要性
    
6.2 選擇bug模式的原因
    
6.3 如何組織bug模式
    
6.4 Bug診斷的快速參考
    
     第7章 RogueTile模式
    
7.1 Rogue Tile bug模式簡述
    
7.1.1 癥狀
    
7.1.2 起因.解決方法和預(yù)防措施
    
7.2 提取代碼的其他障礙
    
7.2.1 通用類型
    
7.2.2 面向方面的編程技術(shù)
    
7.3 小結(jié)
    
     第8章 隨處可見的空指針
    
8.1 空指針異常不提供任何信息
    
8.2 難以捉摸的空指針
    
     第9章 Dangling Composite模式
    
9.1 Dangling Composite bug模式簡述
    
9.1.1 癥狀
    
9.1.2 起因
    
9.1.3 解決方法和預(yù)防措施
    
9.2 小結(jié)
    
     第10章 Null Flag模式
    
10.1 Null Flag bug模式簡述
    
10.1.1 癥狀
    
10.1.2 起因
    
10.1.3 解決方法和預(yù)防措施
    
10.2 健壯性和診斷證據(jù)的缺乏
    
10.2.1 在更好的位置處理異常
    
10.2.2 處理老式代碼
    
10.3 小結(jié)
    
     第11章 Double Descent模式
    
11.1 Double Descent bug模式簡述
    
11.1.1 癥狀
    
11.1.2 起因
    
11.1.3 解決方法和預(yù)防措施
    
11.1.4 快速但不完善的修正方法
    
11.1.5 真正的修正方法
    
11.2 小結(jié)
    
     第12章 Liar View模式
    
12.1 Liar View bug模式簡述
    
12.1.1 癥狀
    
12.1.2 起因
    
12.1.3 解決方法和預(yù)防措施
    
12.2 Liars并非僅出現(xiàn)在GUI程序
    
12.3 小結(jié)
    
     第13章 Saboteur Data模式
    
13.1 Saboteur Data bug模式簡述
    
13.1.1 癥狀
    
13.1.2 語法原因
    
13.1.3 語義原因
    
13.1.4 解決辦法和預(yù)防措施
    
13.2 小結(jié)
    
     第14章 Broken Dispatch模式
    
14.1 Broken Dispatch bug簡述
    
14.1.1 癥狀
    
14.1.2 起因
    
14.1.3 解決方法和預(yù)防措施
    
14.2 小結(jié)
    
     第15章 Impostor Type模式
    
15.1 Impostor Type bug模式簡述
    
15.1.1 癥狀
    
15.1.2 起因
    
15.1.3 解決方法和預(yù)防措施
    
15.2 混合模式
    
15.3 小結(jié)
    
     第16章 Split Cleaner模式
    
16.1 Split Cleaner bug模式簡述
    
16.1.1 癥狀
    
16.1.2 起因
    
16.1.3 解決方法和預(yù)防措施,
    
16.2 小結(jié)
    
     第17章 Fictitious Implementation模式
    
17.1 Fictitius Implementation bug模式簡述
    
17.1.1 癥狀
    
17.1.2 起因
    
17.1.3 檢測Fictitious Implementation
    
17.1.4 解決方法和預(yù)防措施
    
17.2 小結(jié)
    
     第18章 Orphaned Thread模式
    
18.1 Orphaned Thread bug模式簡述
    
18.1.1 癥狀
    
18.1.2 起因
    
18.1.3 解決方法和預(yù)防措施
    
18.2 Orphaned Thread和GUI
    
18.3 小結(jié)
    
     第19章 Run-on Initializatier模式
    
19.1 Run-On lnitializatier bug模式簡述
    
19.1.1 癥狀和起因
    
19.1.2 解決方法和預(yù)防措施
    
19.2 修正bug
    
19.3 小結(jié)
    
     第20章 Platform-Dependent模式
    
20.1 Platform-Dependentbug模式簡述
    
20.1.1 與供應(yīng)商相關(guān)的bug
    
20.1.2 與版本相關(guān)的bug
    
20.1.3 與操作系統(tǒng)相關(guān)的bug
    
20.2 小結(jié)
    
     第21章 診斷清單
    
21.1 基本概念
    
21.2 模式清單
    
     第22章 用于調(diào)試的設(shè)計模式
    
22.1 最大化靜態(tài)類型檢查
    
22.1.1 盡可能設(shè)置final字段
    
22.1.2 將不可能被改寫的方法設(shè)為fial
    
22.1.3 包括作為默認值的類
    
22.1.4 利用已檢查異常確保所有客戶端程序可處理異常情況
    
22.1.5 定義新的異常類型來精確區(qū)分各種異常情況
    
22.1.6 利用特定State類
    
22.1.7 將類型轉(zhuǎn)換和instanceof測試降至最少
    
22.1.8 使用Singleton設(shè)計模式幫助最小化instanceof的使用
    
22.2 將引入bug的可能降至最低
    
22.2.1 提取通用代碼
    
22.2.2 盡可能實現(xiàn)純功能性方法
    
22.2.3 在構(gòu)造函數(shù)中初始化所有字段
    
22.2.4 出現(xiàn)異常情況時立即拋出異常
    
22.2.5 出現(xiàn)錯誤時立刻報告錯誤消息
    
22.2.6 盡早發(fā)現(xiàn)錯誤
    
22.2.7 在代碼中置入斷言
    
22.2.8 盡可能在用戶可觀察到的狀態(tài)下測試代碼
    
22.3 征程尚未結(jié)束
    
     第23章 參考資料
    
     附錄 String-parsing列表構(gòu)造函數(shù)
    
     術(shù)語表

本目錄推薦

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