注冊 | 登錄讀書好,好讀書,讀好書!
讀書網(wǎng)-DuShu.com
當(dāng)前位置: 首頁出版圖書科學(xué)技術(shù)計算機/網(wǎng)絡(luò)軟件工程及軟件方法學(xué)大話重構(gòu)

大話重構(gòu)

大話重構(gòu)

定 價:¥45.00

作 者: 范鋼 著
出版社: 人民郵電出版社
叢編項:
標(biāo) 簽: 計算機與互聯(lián)網(wǎng) 軟件工程及軟件方法學(xué)

ISBN: 9787115348852 出版時間: 2014-04-01 包裝: 平裝
開本: 16開 頁數(shù): 268 字數(shù):  

內(nèi)容簡介

  《大話重構(gòu)》運用大量源于實踐的示例,從編碼、設(shè)計、組織、架構(gòu)、測試、評估、應(yīng)對需求變更等方面,深入而多角度地講述了我們應(yīng)該如何重構(gòu),建設(shè)性地提出了高效可行的重構(gòu)七步。讀完本書,實踐重構(gòu)不再卡殼,需求變更不再糾結(jié)。全面領(lǐng)悟重構(gòu)之美,遺留系統(tǒng)不再是夢魘,自動化測試原來可以這樣做。《大話重構(gòu)》幫助程序員告別劣質(zhì)代碼步入精妙設(shè)計,讓遺留系統(tǒng)的維護者逐步改善原有設(shè)計,指導(dǎo)重構(gòu)實踐者走出困惑步步堅定。同時,也為管理者加強軟件質(zhì)量的管理與監(jiān)督,提供了好的方法與思路。

作者簡介

  范鋼,1999年畢業(yè)于重慶大學(xué),后攻讀哈爾濱工業(yè)大學(xué)軟件工程碩士。參與過國內(nèi)數(shù)十個大型軟件研發(fā)項目,現(xiàn)任航天信息股份有限公司系統(tǒng)架構(gòu)師,先后擔(dān)任過軟件工程師、需求分析員、主管設(shè)計師、項目經(jīng)理、系統(tǒng)架構(gòu)師等各項職務(wù)。長期關(guān)注軟件設(shè)計與質(zhì)量的基礎(chǔ)理論研究。2007年開始寫作,先后發(fā)表了《一個優(yōu)秀軟件開發(fā)人員的必修課》、《談?wù)勡浖_發(fā)那些事兒》、《一堂如何提高代碼質(zhì)量的培訓(xùn)課》、《一次迭代式開發(fā)的研究》等系列文章?!洞笤捴貥?gòu)》是我的第一部著作。

圖書目錄

第一部分 基礎(chǔ)篇
第1章 重構(gòu):改變既有代碼的一劑良藥  
1.1  什么是系統(tǒng)重構(gòu)  
1.2  在保險索上走鋼絲  
1.3  大布局與小步快跑  
1.4  軟件修改的四種動機  
1.5  一個真實的謊言  
第2章 重構(gòu)方法工具箱  
2.1  重構(gòu)是一系列的等量變換--第一次HelloWorld重構(gòu)  
2.2  盤點我們的重構(gòu)工具箱--對HelloWorld抽取類和接口  
第3章 小步快跑的開發(fā)模式  
3.1  大布局你傷不起  
3.2  小設(shè)計而不是大布局  
3.3  小步快跑是這樣玩的--HelloWorld重構(gòu)完成  
第4章 保險索下的系統(tǒng)重構(gòu)  
4.1  你不能沒有保險索  
4.2  自動化測試--想說愛你不容易  
4.3  我們是這樣自動化測試的--JUnit下的HelloWorldTest  
4.4  采用Mock技術(shù)完成測試  
第二部分 實踐篇
第5章 第一步:從分解大函數(shù)開始  
5.1  超級大函數(shù)--軟件退化的重災(zāi)區(qū)  
5.2  抽取方法的實踐  
5.3  最常見的問題  
第6章 第二步:拆分大對象  
6.1  大對象的演化過程  
6.2  大對象的拆分過程--抽取類與職責(zé)驅(qū)動設(shè)計  
6.3  單一職責(zé)原則(SRP)與對象拆分  
6.4  合久必分,分久必合--類的歸并  
第7章 第三步:提高代碼復(fù)用率  
7.1  順序編程的煩惱  
7.2  代碼重復(fù)與DRY原則  
7.3  提高代碼復(fù)用的方法  
7.3.1  當(dāng)重復(fù)代碼存在于同一對象中時--抽取方法  
7.3.2  當(dāng)重復(fù)代碼存在于不同對象中時--抽取類  
7.3.3  不同對象中復(fù)用代碼的另一種方法--封裝成實體類  
7.3.4  當(dāng)代碼所在類具有某種并列關(guān)系時--抽取父類  
7.3.5  當(dāng)出現(xiàn)繼承泛濫時--將繼承轉(zhuǎn)換為組合  
7.3.6  當(dāng)重復(fù)代碼被割裂成碎片時--繼承結(jié)合模板模式  
7.4  代碼重復(fù)的檢查工具  
第8章 第四步:發(fā)現(xiàn)程序可擴展點  
8.1  開放?封閉原則與可擴展點設(shè)計  
8.2  過程的擴展與放置鉤子--運用模板模式增加可擴展點  
8.3  面向切面的可擴展設(shè)計  
8.4  其他可擴展設(shè)計  
第9章 第五步:降低程序依賴度  
9.1  接口、實現(xiàn)與工廠模式  
9.1.1  徹底理解工廠模式和依賴反轉(zhuǎn)原則  
9.1.2  工廠模式在重構(gòu)中的實際運用  
9.2  外部接口與適配器模式--與外部系統(tǒng)解耦  
9.3  繼承的泛濫與橋接模式  
9.4  方法的解耦與策略模式  
9.5  過程的解耦與命令模式  
9.6  透明的功能擴展與設(shè)計--組合模式與裝飾者模式  
第10章 第六步:我們開始分層了  
10.1  什么才是我們需要的分層  
10.2  怎樣才能擁抱需求的變化  
10.3  貧血模型與充血模型  
10.4  我們怎樣面對技術(shù)的變革  
第11章 一次完整的重構(gòu)過程  
11.1  第一步:分解大函數(shù)  
11.2  第二步:拆分大對象  
11.3  第三步:提高復(fù)用率  
11.4  第四步:發(fā)現(xiàn)擴展點  
11.5  第五步:降低依賴度  
11.6  第六步:分層  
11.7  第七步:領(lǐng)域驅(qū)動設(shè)計  
第三部分 進階篇
第12章 什么時候重構(gòu)  
12.1  重構(gòu)是一種習(xí)慣  
12.2  重構(gòu)讓程序可讀  
12.3  重構(gòu),才好復(fù)用  
12.4  先重構(gòu),再擴展  
12.5  變更任務(wù)緊急時,又該如何重構(gòu)  
第13章 測試驅(qū)動開發(fā)  
13.1  測試驅(qū)動開發(fā)(TDD)vs.后測試開發(fā)(TAD)  
13.2  測試驅(qū)動開發(fā)與重構(gòu)  
13.3  遺留系統(tǒng)怎樣開展TDD  
第14章 全面的升級任務(wù)  
14.1  計劃式設(shè)計vs.演進式設(shè)計  
14.2  風(fēng)險驅(qū)動設(shè)計  
14.3  制定系統(tǒng)重構(gòu)計劃  
第15章 我們怎樣擁抱變化  
15.1  領(lǐng)域才是軟件系統(tǒng)的“心”--工資軟件的三次設(shè)計演變  
15.2  領(lǐng)域模型分析方法  
15.3  原文分析法  
15.4  領(lǐng)域驅(qū)動設(shè)計--使用領(lǐng)域模型與客戶一起設(shè)計  
15.5  在遺留系統(tǒng)中的應(yīng)用  
第16章 測試的困境  
16.1  重構(gòu)初期的困局  
16.2  解耦與自動化測試  
16.3  開發(fā)人員,還是測試人員  
16.4  建立自動化測試體系  
第17章 系統(tǒng)重構(gòu)的評價  
17.1  評價軟件質(zhì)量的指標(biāo)  
17.2  怎樣評價軟件質(zhì)量呢  
結(jié)束語:重構(gòu)改變了世界  
附錄

本目錄推薦

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