注冊(cè) | 登錄讀書好,好讀書,讀好書!
讀書網(wǎng)-DuShu.com
當(dāng)前位置: 首頁(yè)出版圖書科學(xué)技術(shù)計(jì)算機(jī)/網(wǎng)絡(luò)軟件工程及軟件方法學(xué)修改代碼的藝術(shù)

修改代碼的藝術(shù)

修改代碼的藝術(shù)

定 價(jià):¥59.00

作 者: (美)費(fèi)瑟 著,劉未鵬 譯
出版社: 人民郵電出版社
叢編項(xiàng): 圖靈程序設(shè)計(jì)叢書
標(biāo) 簽: 計(jì)算機(jī)與互聯(lián)網(wǎng)

ISBN: 9787115163622 出版時(shí)間: 2007-11-01 包裝: 平裝
開本: 16開 頁(yè)數(shù): 342 字?jǐn)?shù):  

內(nèi)容簡(jiǎn)介

  《修改代碼的藝術(shù)》還包括了一組共24項(xiàng)解依賴技術(shù),它們能幫助你單獨(dú)對(duì)付代碼中的問題片段,并實(shí)現(xiàn)更安全的修改。修改代碼是每一位軟件開發(fā)人員的日常工作。開發(fā)人員常常面對(duì)的現(xiàn)實(shí)是,即便是最訓(xùn)練有素的開發(fā)團(tuán)隊(duì)也會(huì)寫出混亂的代碼,而且系統(tǒng)的腐化程度也會(huì)日積月累?!缎薷拇a的藝術(shù)》是一部里程碑式的著作,針對(duì)大型的、無(wú)測(cè)試的遺留代碼基,提供了從頭到尾的方案,讓你能夠更有效地應(yīng)付它們,將你的遺留代碼基改善得具有更高性能、更多功能、更好的可靠性和可控性。《修改代碼的藝術(shù)》適合各層次軟件開發(fā)人員、管理人員和測(cè)試人員閱讀。

作者簡(jiǎn)介

  Michael Feathers世界級(jí)面向?qū)ο蠹夹g(shù)專家,以豐富的軟件項(xiàng)目開發(fā)經(jīng)驗(yàn)著稱。目前在世界頂尖的軟件咨詢公司Object Mentor從事敏捷方法,極限編程、測(cè)試驅(qū)動(dòng)開發(fā)、重構(gòu)、面向?qū)ο笤O(shè)計(jì)、Java、c#和c++等方面的培訓(xùn)和項(xiàng)目指導(dǎo)。他是著名測(cè)試框架CppUnit和FitCpp的開發(fā)者,已經(jīng)主持了三次面向?qū)ο蠼缡?huì)OOPSLA上的CodeFest比賽。

圖書目錄

第一部分 修改機(jī)理第1章 修改軟件 1.1 修改軟件的四個(gè)起因 1.1.1 添加特性和修正bug 1.1.2 改善設(shè)計(jì) 1.1.3 優(yōu)化 1.1.4 綜合起來(lái) 1.2 危險(xiǎn)的修改第2章 帶著反饋工作 2.1 什么是單元測(cè)試 2.2 高層測(cè)試 2.3 測(cè)試覆蓋 2.4 遺留代碼修改算法 2.4.1 確定修改點(diǎn) 2.4.2 找出測(cè)試點(diǎn) 2.4.3 解依賴 2.4.4 編寫測(cè)試 2.4.5 改動(dòng)和重構(gòu) 2.4.6 其他內(nèi)容第3章 感知和分離 3.1 偽裝成合作者 3.1.1 偽對(duì)象 3.1.2 偽對(duì)象的兩面性 3.1.3 偽對(duì)象手法的核心理念 3.1.4 仿對(duì)象第4章 接縫模型 4.1 一大段文本 4.2 接縫 4.3 接縫類型 4.3.1 預(yù)處理期接縫 4.3.2 連接期接縫 4.3.3 對(duì)象接縫第5章 工具 5.1 自動(dòng)化重構(gòu)工具 5.2 仿對(duì)象 5.3 單元測(cè)試用具 5.3.1 JUnit 5.3.2 CppUnitLite 5.3.3 NUnit 5.3.4 其他xUnit框架 5.4 一般測(cè)試用具 5.4.1 集成測(cè)試框架 5.4.2 Fitnesse第二部分 修改代碼的技術(shù)第6章 時(shí)間緊迫,但必須修改 6.1 新生方法 6.2 新生類 6.3 外覆方法 6.4 外覆類 6.5 小結(jié)第7章 漫長(zhǎng)的修改 7.1 理解代碼 7.2 時(shí)滯 7.3 解依賴 7.4 小結(jié)第8章 添加特性 8.1 測(cè)試驅(qū)動(dòng)開發(fā) 8.1.1 編寫一個(gè)失敗測(cè)試用例 8.1.2 讓它通過編譯 8.1.3 讓測(cè)試通過 8.1.4 消除重復(fù) 8.1.5 編寫一個(gè)失敗測(cè)試用例 8.1.6 讓它通過編譯 8.1.7 讓測(cè)試通過 8.1.8 消除重復(fù)代碼 8.1.9 編寫一個(gè)失敗測(cè)試用例 8.1.10 讓它通過編譯 8.1.11 讓測(cè)試通過 8.1.12 消除重復(fù) 8.2 差異式編程 8.3 小結(jié)第9章 無(wú)法將類放入測(cè)試用具中 9.1 令人惱火的參數(shù) 9.2 隱藏依賴 9.3 構(gòu)造塊 9.4 惱人的全局依賴 9.5 可怕的包含依賴 9.6 “洋蔥”參數(shù) 9.7 化名參數(shù)第10章 無(wú)法在測(cè)試用具中運(yùn)行方法 10.1 隱藏的方法 10.2 “有益的”語(yǔ)言特性 10.3 無(wú)法探知的副作用第11章 修改時(shí)應(yīng)當(dāng)測(cè)試哪些方法 11.1 推測(cè)代碼修改所產(chǎn)生的影響 11.2 前向推測(cè) 11.3 影響的傳播 11.4 進(jìn)行影響推測(cè)的工具 11.5 從影響分析當(dāng)中學(xué)習(xí) 11.6 簡(jiǎn)化影響結(jié)構(gòu)示意圖第12章 在同一地進(jìn)行多處修改,是否應(yīng)該將相關(guān)的所有類都解依賴 12.1 攔截點(diǎn) 12.1.1 簡(jiǎn)單的情形 12.1.2 高層攔截點(diǎn) 12.2 通過匯點(diǎn)來(lái)判斷設(shè)計(jì)的好壞 12.3 匯點(diǎn)的陷阱第13章 修改時(shí)應(yīng)該怎樣寫測(cè)試 13.1 特征測(cè)試 13.2 刻畫類 13.3 目標(biāo)測(cè)試 13.4 編寫特征測(cè)試的啟發(fā)式方法第14章 棘手的庫(kù)依賴問題第15章 到處都是API調(diào)用第16章 對(duì)代碼的理解不足 16.1 注記/草圖 16.2 清單標(biāo)注 16.2.1 職責(zé)分離 16.2.2 理解方法結(jié)構(gòu) 16.2.3 方法提取 16.2.4 理解你的修改產(chǎn)生的影響 16.3 草稿式重構(gòu) 16.4 刪除不用的代碼第17章 應(yīng)用毫無(wú)結(jié)構(gòu)可言 17.1 講述系統(tǒng)的故事 17.2 Naked CRC 17.3 反省你們的交流或討論第18章 測(cè)試代碼礙手礙腳 18.1 類命名約定 18.2 測(cè)試代碼放在哪兒第19章 對(duì)非面向?qū)ο蟮捻?xiàng)目,如何安全地對(duì)它進(jìn)行修改 19.1 一個(gè)簡(jiǎn)單的案例 19.2 一個(gè)棘手的案例 19.3 添加新行為 19.4 利用面向?qū)ο蟮膬?yōu)勢(shì) 19.5 一切都是面向?qū)ο蟮?0章 處理大類 20.1 職責(zé)識(shí)別 20.2 其他技術(shù) 20.3 繼續(xù)前進(jìn) 20.3.1 戰(zhàn)略 20.3.2 戰(zhàn)術(shù) 20.4 類提取之后第21章 需要修改大量相同的代碼第22章 要修改一個(gè)巨型方法,卻沒法為它編寫測(cè)試 22.1 巨型方法的種類 22.1.1 項(xiàng)目列表式方法 22.1.2 鋸齒狀方法 22.2 利用自動(dòng)重構(gòu)支持來(lái)對(duì)付巨型方法 22.3 手動(dòng)重構(gòu)的挑戰(zhàn) 22.3.1 引入感知變量 22.3.2 只提取你所了解的 22.3.3 依賴收集 22.3.4 分解出方法對(duì)象 22.4 策略 22.4.1 主干提取 22.4.2 序列發(fā)現(xiàn) 22.4.3 優(yōu)先提取到當(dāng)前類中 22.4.4 小塊提取 22.4.5 時(shí)刻準(zhǔn)備重新提取第23章 降低修改的風(fēng)險(xiǎn) 23.1 超感編輯 23.2 單一目標(biāo)的編輯 23.3 簽名保持 23.4 依靠編譯器第24章 當(dāng)你感到絕望時(shí)第三部分 解依賴技術(shù)第25章 解依賴技術(shù) 25.1 參數(shù)適配 25.2 分解出方法對(duì)象 25.3 定義補(bǔ)全 25.4 封裝全局引用 25.5 暴露靜態(tài)方法 25.6 提取并重寫調(diào)用 25.7 提取并重寫工廠方法 25.8 提取并重寫獲取方法 25.9 實(shí)現(xiàn)提取 25.9.1 步驟 25.9.2 一個(gè)更復(fù)雜的例子 25.10 接口提取 25.11 引入實(shí)例委托 25.12 引入靜態(tài)設(shè)置方法 25.13 連接替換 25.14 參數(shù)化構(gòu)造函數(shù) 25.15 數(shù)化方法 25.16 樸素化參數(shù) 25.17 特性提升 25.18 依賴下推 25.19 換函數(shù)為函數(shù)指針 25.20 以獲取方法替換全局引用 25.21 子類化并重寫方法 25.22 替換實(shí)例變量 25.23 模板重定義 25.24 文本重定義附錄重構(gòu)術(shù)語(yǔ)表索引

本目錄推薦

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