ID | 需要重构的信号 | 对应的重构方法 |
1 | 出现了重复代码 | 提取或者重组类 提取或者重组函数、方法 用多态处理子类重复代码 |
2 | 两个类耦合太多,太亲密 | 提取或者重组类,提取或者重组函数方法 |
3 | 出现了代码行尺寸极其庞大的类 | 提取或者重组类 |
4 | 没有实际作用的懒惰类 | 提取或者重组类 |
5 | 体积庞大的方法函数 | 提取或者重组函数方法 |
6 | 方法中的长参数列表 | 提取或者重组函数方法 |
7 | 子类中出现相同或相似的方法定义 | 提取或者重组父类 形成模版方法 用多态处理子类重复代码 |
8 | 很难看懂,代码逻辑或者意图表达的不清楚明晰 | 引入临时变量 提取或者重组函数方法 |
9 | 一些不加任何约束的switch语句,或者一大串if/else嵌套 | 使用围绕if体的多条件返回语句代替嵌套的复杂if/else条件判断 用多态来代替条件判断 |
10 | 太多“非常有必要的”注释 | 将注释转换为代码 |
11 | 代码中硬性潜入太多数值 | 用符号常量定义来代替硬性编码数字嵌入代码 |
12 | 类中定义了区分不同类型的类别代码 | 用多态来代替条件判断 |
13 | 太难给类、方法、变量命名时 | 提取或者重组类 提取或者重组函数方法 |
14 | 类中出现了某些变量或者方法有时有用,有时没用 | 提取或者重组类 用多态处理子类重复代码 |
重构时机和重构方法之间的对应关系
最新推荐文章于 2023-07-27 15:26:51 发布