新到貨2本75折
大話重構

大話重構

  • 定價:270
  • 優惠價:87235
  • 運送方式:
  • 臺灣與離島
  • 海外
  • 可配送點:台灣、蘭嶼、綠島、澎湖、金門、馬祖
  • 可配送點:台灣、蘭嶼、綠島、澎湖、金門、馬祖
  • 已售完,無法購買
  • 分享
 

內容簡介

本書運用大量源於實踐的示例,從編碼、設計、組織、架構、測試、評估、應對需求變更等方面,深入而多角度地講述了我們應該如何重構,建設性地提出了高效可行的重構七步。

讀完本書,實踐重構不再卡殼,需求變更不再糾結。全面領悟重構之美,遺留系統不再是夢魘,自動化測試原來可以這樣做。

本書幫助程序員告別劣質代碼步入精妙設計,讓遺留系統的維護者逐步改善原有設計,指導重構實踐者走出困惑步步堅定。同時,也為管理者加強軟件質量的管理與監督,提供了好的方法與思路。

范鋼,1999年畢業於重慶大學,後攻讀哈爾濱工業大學軟件工程碩士。參與過國內數十個大型軟件研發項目,現任航天信息股份有限公司系統架構師,先後擔任過軟件工程師、需求分析員、主管設計師、項目經理、系統架構師等各項職務。長期關注軟件設計與質量的基礎理論研究。2007年開始寫作,先後發表了《一個優秀軟件開發人員的必修課》、《談談軟件開發那些事兒》、《一堂如何提高代碼質量的培訓課》、《一次迭代式開發的研究》等系列文章。《大話重構》是我的第一部著作。
 

目錄

第一部分 基礎篇
第1章 重構:改變既有代碼的一劑良藥
1.1 什麽是系統重構
1.2 在保險索上走鋼絲
1.3 大布局與小步快跑
1.4 軟件修改的四種動機
1.5 一個真實的謊言
第2章 重構方法工具箱
2.1 重構是一系列的等量變換——第一次HelloWorld重構
2.2 盤點我們的重構工具箱——對HelloWorld抽取類和接口
第3章 小步快跑的開發模式
3.1 大布局你傷不起
3.2 小設計而不是大布局
3.3 小步快跑是這樣玩的——HelloWorld重構完成
第4章 保險索下的系統重構
4.1 你不能沒有保險索
4.2 自動化測試——想說愛你不容易
4.3 我們是這樣自動化測試的——JUnit下的HelloWorldTest
4.4 采用Mock技術完成測試

第二部分 實踐篇
第5章 第一步:從分解大函數開始
5.1 超級大函數——軟件退化的重災區
5.2 抽取方法的實踐
5.3 最常見的問題 5
第6章 第二步:拆分大對象
6.1 大對象的演化過程
6.2 大對象的拆分過程——抽取類與職責驅動設計
6.3 單一職責原則(SRP)與對象拆分
6.4 合久必分,分久必合——類的歸並
第7章 第三步:提高代碼復用率
7.1 順序編程的煩惱
7.2 代碼重復與DRY原則
7.3 提高代碼復用的方法
7.3.1 當重復代碼存在於同一對象中時——抽取方法
7.3.2 當重復代碼存在於不同對象中時——抽取類
7.3.3 不同對象中復用代碼的另一種方法——封裝成實體類
7.3.4 當代碼所在類具有某種並列關系時——抽取父類
7.3.5 當出現繼承泛濫時——將繼承轉換為組合
7.3.6 當重復代碼被割裂成碎片時——繼承結合模板模式
7.4 代碼重復的檢查工具
第8章 第四步:發現程序可擴展點
8.1 開放?封閉原則與可擴展點設計
8.2 過程的擴展與放置鉤子——運用模板模式增加可擴展點
8.3 面向切面的可擴展設計
8.4 其他可擴展設計
第9章 第五步:降低程序依賴度
9.1 接口、實現與工廠模式
9.1.1 徹底理解工廠模式和依賴反轉原則
9.1.2 工廠模式在重構中的實際運用
9.2 外部接口與適配器模式——與外部系統解耦
9.3 繼承的泛濫與橋接模式
9.4 方法的解耦與策略模式
9.5 過程的解耦與命令模式
9.6 透明的功能擴展與設計——組合模式與裝飾者模式
第10章 第六步:我們開始分層了
10.1 什麽才是我們需要的分層
10.2 怎樣才能擁抱需求的變化
10.3 貧血模型與充血模型
10.4 我們怎樣面對技術的變革
第11章 一次完整的重構過程
11.1 第一步:分解大函數
11.2 第二步:拆分大對象
11.3 第三步:提高復用率
11.4 第四步:發現擴展點
11.5 第五步:降低依賴度
11.6 第六步:分層
11.7 第七步:領域驅動設計

第三部分 進階篇
第12章 什麽時候重構
12.1 重構是一種習慣
12.2 重構讓程序可讀
12.3 重構,才好復用
12.4 先重構,再擴展
12.5 變更任務緊急時,又該如何重構
第13章 測試驅動開發
13.1 測試驅動開發(TDD)vs.後測試開發(TAD)
13.2 測試驅動開發與重構
13.3 遺留系統怎樣開展TDD
第14章 全面的升級任務
14.1 計划式設計vs.演進式設計
14.2 風險驅動設計
14.3 制定系統重構計划
第15章 我們怎樣擁抱變化
15.1 領域才是軟件系統的「心」——工資軟件的三次設計演變
15.2 領域模型分析方法
15.3 原文分析法
15.4 領域驅動設計——使用領域模型與客戶一起設計
15.5 在遺留系統中的應用
第16章 測試的困境
16.1 重構初期的困局
16.2 解耦與自動化測試
16.3 開發人員,還是測試人員
16.4 建立自動化測試體系
第17章 系統重構的評價
17.1 評價軟件質量的指標
17.2 怎樣評價軟件質量呢

結束語:重構改變了世界
附錄
 

詳細資料

  • ISBN:9787115348852
  • 規格:256頁 / 普通級 / 1-1
  • 出版地:中國

最近瀏覽商品

 

相關活動

  • 【自然科普、電腦資訊】商業新視野:洞悉商機,提升核心競爭力,一手掌握每月最新商業趨勢!_1月新上檔
 

購物說明

溫馨提醒您:若您訂單中有購買簡體館無庫存/預售書或庫存於海外廠商的書籍,建議與其他商品分開下單,以避免等待時間過長,謝謝。

大陸出版品書況:因裝幀品質及貨運條件未臻完善,書況與台灣出版品落差甚大,封面老舊、出現磨痕、凹痕等均屬常態,故簡體字館除封面破損、內頁脫落...等較嚴重的狀態外,其餘所有商品將正常出貨。 

 

請注意,部分書籍附贈之內容(如音頻mp3或影片dvd等)已無實體光碟提供,需以QR CODE 連結至當地網站註冊“並通過驗證程序”,方可下載使用。

調貨時間:若您購買海外庫存之商品,於您完成訂購後,商品原則上約21~30個工作天內抵台(若有將延遲另行告知)。為了縮短等待的時間,建議您將簡體書與其它商品分開訂購,以利一般商品快速出貨。 

若您具有法人身份為常態性且大量購書者,或有特殊作業需求,建議您可洽詢「企業採購」。 

退換貨說明 

會員所購買的商品均享有到貨十天的猶豫期(含例假日)。退回之商品必須於猶豫期內寄回。 

辦理退換貨時,商品必須是全新狀態與完整包裝(請注意保持商品本體、配件、贈品、保證書、原廠包裝及所有附隨文件或資料的完整性,切勿缺漏任何配件或損毀原廠外盒)。退回商品無法回復原狀者,恐將影響退貨權益或需負擔部分費用。 

訂購本商品前請務必詳閱商品退換貨原則

  • 手作精選2本75折
  • 滿888現折88
  • 羅振宇預測之書