# Refactoring-Learning
**Repository Path**: xd1998xd/refactoring-learning
## Basic Information
- **Project Name**: Refactoring-Learning
- **Description**: 《重构:改善既有代码的设计》学习记录
- **Primary Language**: Unknown
- **License**: Not specified
- **Default Branch**: master
- **Homepage**: None
- **GVP Project**: No
## Statistics
- **Stars**: 0
- **Forks**: 0
- **Created**: 2022-04-12
- **Last Updated**: 2022-04-15
## Categories & Tags
**Categories**: Uncategorized
**Tags**: None
## README
# Refactoring-Learning
### 介绍
《重构:改善既有代码的设计》学习记录
### 目录说明
#### 第一章 重构的示例
versionX 是第一章代码版本修改过程记录
使用Jest编写了简单的自动化测试验证修改过程不引入bug
version 1~5 对应 1.8 节之前的内容
version 6 是第一章修改后的最终版本
第一章重构的主要节点包括:
1. 将原函数分解为一组嵌套的函数
2. 应用拆分阶段,分离计算逻辑和输出格式化的逻辑
3. 为计算器引入多态性来处理计算逻辑
总体而言,重构过程为代码添加了更多的结构,以更好地表达代码的意图。重构早期的动力是尝试理解代码如何工作。好代码的检验标准是:是否可以轻易的修改它。
#### 第二章 重构的原则
#### 第三章 代码中的不良习惯
1. 命名不能表现变量或函数的意图
2. 存在相同的代码结构或重复代码
3. 过长的函数
4. 过长的参数列表