Refactoring in Large Software Projects: Performing Complex Restructurings Successfully
暫譯: 大型軟體專案中的重構:成功執行複雜重組

Martin Lippert, Stephen Roock

  • 出版商: Wiley
  • 出版日期: 2006-05-18
  • 定價: $1,980
  • 售價: 8.5$1,683
  • 語言: 英文
  • 頁數: 286
  • 裝訂: Paperback
  • ISBN: 0470858923
  • ISBN-13: 9780470858929
  • 相關分類: Refactoring
  • 立即出貨 (庫存 < 3)

買這商品的人也買了...

相關主題

商品描述

Description

Large Refactorings looks at methods of establish design improvements as an important and independent activity during development of software, and will help to ensure that software continues to adapt, improve and remain easy to read and modify without altering its observable behaviour. It provides real-world experience from real refactored projects and shows how to refactor software to ensure that it is efficient, fresh and adaptable.

 

Table of Contents

1. Introduction.

1.1 Architecture Smells.

1.2 Large Refactorings.

1.3 Refactoring and Databases.

1.4 Refactoring and Published-APIs.

1.5 Recommended Reading.

1.6 For Whom Was this Book Written?.

1.7 The Background of this Book.

1.8 Acknowledgements.

2. Refactoring - An Overview.

2.1 Emergent Design.

2.2 What Does Refactoring Mean?.

2.3 The Role of Tests.

2.4 Tools Support for Refactorings.

2.5 Experiences and Recommendations.

2.6 References.

3. Architecture Smells.

3.1 Design Principles.

3.2 Smells in Dependency Graphs.

3.3 Smells in Inheritance Hierarchies.

3.4 Smells in Packages.

3.5 Smells in Subsystems.

3.6 Smells in Layers.

3.7 Locating Smells.

3.8 Preventing Smells.

3.9 References.

4. Large Refactorings.

4.1 Introduction.

4.2 Best Practices for Large Refactorings.

4.3 Fragments of Large Refactorings.

4.4 Example: Lists.

4.5 References.

5. Refactoring of Relational Databases.

5.1 Differences between Databases and OO Programming Languages.

5.2 Problems in the Interaction of Programs and Database.

5.3 Refactoring of Relational Database Schemas.

5.4 Migration of Data between Different Versions of a Database Schema.

5.5 Refactoring Database Access Codes.

5.6 Roles in a Project.

5.7 Tools.

5.8 Tips.

5.9 A Typical Data Models.

5.10 An Example.

5.11 References.

6. API Refactorings.

6.1 Subsystems.

6.2 Problems of API Refactorings.

6.3 Compatibility Classes.

6.4 Refactoring Tags.

6.5 API Refactorings in Detail.

6.6 Converter.

6.7 Application Migration with Incompatible Subsystem Changes.

6.8 Tips for Designing APIs.

6.9 An Example.

6.10 Another Approach: "Catch Up and Replay".

6.11 References.

7. Tool-based Detection and Avoidance of Architecture Smells.

7.1 Specifications of an Analysis Tool.

7.2 Architecture Analysis with Sotograph.

7.3 Architecture Analysis Based on Cycles.

7.4 Metrics-based Architecture Analysis.

7.5 Support for the Preparation of Large Refactorings.

7.6 Support of the Refactoring Process.

7.7 Conclusion.

8. Conclusion.

9. Glossary.

商品描述(中文翻譯)

**描述**
《大型重構》探討在軟體開發過程中,建立設計改進作為一項重要且獨立的活動的方法,並將有助於確保軟體持續適應、改進,並保持易於閱讀和修改,而不改變其可觀察的行為。它提供了來自實際重構專案的真實經驗,並展示如何重構軟體以確保其高效、新鮮且具適應性。

**目錄**
**1. 介紹。**
1.1 架構異味。
1.2 大型重構。
1.3 重構與資料庫。
1.4 重構與公開API。
1.5 推薦閱讀。
1.6 本書的讀者對象。
1.7 本書的背景。
1.8 感謝。
**2. 重構 - 概述。**
2.1 新興設計。
2.2 重構的意義。
2.3 測試的角色。
2.4 重構的工具支援。
2.5 經驗與建議。
2.6 參考文獻。
**3. 架構異味。**
3.1 設計原則。
3.2 依賴圖中的異味。
3.3 繼承層級中的異味。
3.4 套件中的異味。
3.5 子系統中的異味。
3.6 層級中的異味。
3.7 定位異味。
3.8 預防異味。
3.9 參考文獻。
**4. 大型重構。**
4.1 介紹。
4.2 大型重構的最佳實踐。
4.3 大型重構的片段。
4.4 範例:列表。
4.5 參考文獻。
**5. 關聯資料庫的重構。**
5.1 資料庫與物件導向程式語言的差異。
5.2 程式與資料庫互動中的問題。
5.3 關聯資料庫架構的重構。
5.4 不同版本資料庫架構之間的資料遷移。
5.5 重構資料庫存取程式碼。
5.6 專案中的角色。
5.7 工具。
5.8 提示。
5.9 一個典型的資料模型。
5.10 一個範例。
5.11 參考文獻。
**6. API重構。**
6.1 子系統。
6.2 API重構的問題。
6.3 相容性類別。
6.4 重構標籤。
6.5 API重構的詳細說明。
6.6 轉換器。
6.7 具有不相容子系統變更的應用程式遷移。
6.8 設計API的提示。
6.9 一個範例。
6.10 另一種方法:'追趕與重播'。
6.11 參考文獻。
**7. 基於工具的架構異味檢測與避免。**
7.1 分析工具的規範。
7.2 使用Sotograph進行架構分析。
7.3 基於循環的架構分析。
7.4 基於指標的架構分析。
7.5 支援大型重構的準備。
7.6 支援重構過程。
7.7 結論。
**8. 結論。**
**9. 詞彙表。**