From 1634228ad341533ea893f1906d6c3f077c5eebd0 Mon Sep 17 00:00:00 2001
From: CyC2018 <1029579233@qq.com>
Date: Sun, 4 Mar 2018 15:02:40 +0800
Subject: [PATCH] auto commit
---
notes/重构.md | 46 +++++++++++++++++++++++-----------------------
1 file changed, 23 insertions(+), 23 deletions(-)
diff --git a/notes/重构.md b/notes/重构.md
index 69806117..772db892 100644
--- a/notes/重构.md
+++ b/notes/重构.md
@@ -1,6 +1,6 @@
-* [第一章 第一个案例](#第一章-第一个案例)
-* [第二章 重构原则](#第二章-重构原则)
+* [第一个案例](#第一个案例)
+* [重构原则](#重构原则)
* [定义](#定义)
* [为何重构](#为何重构)
* [三次法则](#三次法则)
@@ -9,7 +9,7 @@
* [何时不该重构](#何时不该重构)
* [重构与设计](#重构与设计)
* [重构与性能](#重构与性能)
-* [第三章 代码的坏味道](#第三章-代码的坏味道)
+* [代码的坏味道](#代码的坏味道)
* [1. Duplicated Code(重复代码)](#1-duplicated-code重复代码)
* [2. Long Method(过长函数)](#2-long-method过长函数)
* [3. Large Class(过大的类)](#3-large-class过大的类)
@@ -32,9 +32,9 @@
* [20. Data Class(幼稚的数据类)](#20-data-class幼稚的数据类)
* [21. Refused Bequest(被拒绝的馈赠)](#21-refused-bequest被拒绝的馈赠)
* [22. Comments(过多的注释)](#22-comments过多的注释)
-* [第四章 构筑测试体系](#第四章-构筑测试体系)
-* [第五章 重构列表](#第五章-重构列表)
-* [第六章 重新组织函数](#第六章-重新组织函数)
+* [构筑测试体系](#构筑测试体系)
+* [重构列表](#重构列表)
+* [重新组织函数](#重新组织函数)
* [1. Extract Method(提炼函数)](#1-extract-method提炼函数)
* [2. Inline Method(内联函数)](#2-inline-method内联函数)
* [3. Inline Temp(内联临时变量)](#3-inline-temp内联临时变量)
@@ -44,7 +44,7 @@
* [7. Remove Assigments to Parameters(移除对参数的赋值)](#7-remove-assigments-to-parameters移除对参数的赋值)
* [8. Replace Method with Method Object(以函数对象取代函数)](#8-replace-method-with-method-object以函数对象取代函数)
* [9. Subsititute Algorithn(替换算法)](#9-subsititute-algorithn替换算法)
-* [第七章 在对象之间搬移特性](#第七章-在对象之间搬移特性)
+* [在对象之间搬移特性](#在对象之间搬移特性)
* [1. Move Method(搬移函数)](#1-move-method搬移函数)
* [2. Move Field(搬移字段)](#2-move-field搬移字段)
* [3. Extract Class(提炼类)](#3-extract-class提炼类)
@@ -53,7 +53,7 @@
* [6. Remove Middle Man(移除中间人)](#6-remove-middle-man移除中间人)
* [7. Introduce Foreign Method(引入外加函数)](#7-introduce-foreign-method引入外加函数)
* [8. Introduce Local Extension(引入本地扩展)](#8-introduce-local-extension引入本地扩展)
-* [第八章 重新组织数据](#第八章-重新组织数据)
+* [重新组织数据](#重新组织数据)
* [1. Self Encapsulate Field(自封装字段)](#1-self-encapsulate-field自封装字段)
* [2. Replace Data Value with Object(以对象取代数据值)](#2-replace-data-value-with-object以对象取代数据值)
* [3. Change Value to Reference(将值对象改成引用对象)](#3-change-value-to-reference将值对象改成引用对象)
@@ -70,7 +70,7 @@
* [14. Replace Type Code with Subcalsses(以子类取代类型码)](#14-replace-type-code-with-subcalsses以子类取代类型码)
* [15. Replace Type Code with State/Strategy (以 State/Strategy 取代类型码)](#15-replace-type-code-with-statestrategy-以-statestrategy-取代类型码)
* [16. Replace Subclass with Fields(以字段取代子类)](#16-replace-subclass-with-fields以字段取代子类)
-* [第九章 简化条件表达式](#第九章-简化条件表达式)
+* [简化条件表达式](#简化条件表达式)
* [1. Decompose Conditional(分解条件表达式)](#1-decompose-conditional分解条件表达式)
* [2. Consolidate Conditional Expression(合并条件表达式)](#2-consolidate-conditional-expression合并条件表达式)
* [3. Consolidate Duplicate Conditional Fragments (合并重复的条件片段)](#3-consolidate-duplicate-conditional-fragments-合并重复的条件片段)
@@ -79,7 +79,7 @@
* [6. Replace Conditional with Polymorphism (以多态取代条件表达式)](#6-replace-conditional-with-polymorphism-以多态取代条件表达式)
* [7. Introduce Null Object(引入Null对象)](#7-introduce-null-object引入null对象)
* [8. Introduce Assertion(引入断言)](#8-introduce-assertion引入断言)
-* [第十章 简化函数调用](#第十章-简化函数调用)
+* [简化函数调用](#简化函数调用)
* [1. Rename Method(函数改名)](#1-rename-method函数改名)
* [2. Add Parameter(添加参数)](#2-add-parameter添加参数)
* [3. Remove Parameter(移除参数)](#3-remove-parameter移除参数)
@@ -95,7 +95,7 @@
* [13. Encapsulate Downcast(封装向下转型)](#13-encapsulate-downcast封装向下转型)
* [14. Replace Error Code with Exception (以异常取代错误码)](#14-replace-error-code-with-exception-以异常取代错误码)
* [15. Replace Exception with Test(以测试取代异常)](#15-replace-exception-with-test以测试取代异常)
-* [第十一章 处理概括关系](#第十一章-处理概括关系)
+* [处理概括关系](#处理概括关系)
* [1. Pull Up Field(字段上移)](#1-pull-up-field字段上移)
* [2. Pull Up Method(函数上移)](#2-pull-up-method函数上移)
* [3. Pull Up Constructor Body(构造函数本体上移)](#3-pull-up-constructor-body构造函数本体上移)
@@ -111,7 +111,7 @@
-# 第一章 第一个案例
+# 第一个案例
如果你发现自己需要为程序添加一个特性,而代码结构使你无法很方便地达成目的,那就先重构这个程序。
@@ -162,7 +162,7 @@ double getTotalCharge() {