`
chenguanwei2008
  • 浏览: 119312 次
  • 性别: Icon_minigender_1
  • 来自: 重庆
社区版块
存档分类
最新评论

重构时机和重构方法之间的对应关系

 
阅读更多

ID

需要重构的信号

对应的重构方法

1

出现了重复代码

提取或者重组类

提取或者重组函数、方法

用多态处理子类重复代码

2

两个类耦合太多,太亲密

提取或者重组类,提取或者重组函数方法

3

出现了代码行尺寸极其庞大的类

提取或者重组类

4

没有实际作用的懒惰类

提取或者重组类

5

体积庞大的方法函数

提取或者重组函数方法

6

方法中的长参数列表

提取或者重组函数方法

7

子类中出现相同或相似的方法定义

提取或者重组父类

形成模版方法

用多态处理子类重复代码

8

很难看懂,代码逻辑或者意图表达的不清楚明晰

引入临时变量

提取或者重组函数方法

9

一些不加任何约束的switch语句,或者一大串if/else嵌套

使用围绕if体的多条件返回语句代替嵌套的复杂if/else条件判断

用多态来代替条件判断

10

太多“非常有必要的”注释

将注释转换为代码

11

代码中硬性潜入太多数值

用符号常量定义来代替硬性编码数字嵌入代码

12

类中定义了区分不同类型的类别代码

用多态来代替条件判断

13

太难给类、方法、变量命名时

提取或者重组类

提取或者重组函数方法

14

类中出现了某些变量或者方法有时有用,有时没用

提取或者重组类

用多态处理子类重复代码

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics