Bad smell in code
下面列出的一些坏味道是《重构》一书中提到的,如果你的代码中有这种味道,那么意味着重构的时机已经来临了。
1、Duplicated Code(重复的代码)
同样的逻辑在多处表达。
2、Long Method(过长函数)
3、Large Class(过大类)
类的职责过多。
4、Long Parameter List(过长参数列)
5、Divergent Change(发散式变化)
多个变化可以引起一个类的修改。
6、Shotgun Surgery(散弹式修改)
一个变化引起多处修改。
7、Feature Envy(依恋情结)
过多地使用外部类。
8、Data Clumps(数据泥团)
多个相关的数据不在一个独立的类中。
9、Primitive Obsession(基本型别偏执)
使用太多的基本类别。
10、Switch Statements(switch惊辣现身)
过多的switch语句,维护扩展的噩梦。
11、Parallel Inheritance Hierarchies(平行继承体系)
在一个继承体系中增加一个类,会对应在另一个继承体系增加类。
12、Lazy Class(冗余类)
不再有现实意义的类的存在,增加维护成本。
13、Speculative Generality(夸夸其谈未来性)
过多的提前设计。
14、Temporary Field(令人迷惑的暂时值域)
太多的零时变量。
15、Message Chains(过度耦合的消息链)
消息链太长,耦合性太强。
16、Middle Man(中间转手人)
中间委托太多。
17、Inappropriate Intimacy(狎昵关系)
两个类过多地使用彼此的私有成员。
18、Alternative Classes with Different Interfaces(异曲同工类)
实现同样的功能却有不同的签名式。
19、Incomplete Library Class(不完美的程序库)
程序库没有需要的功能。
20、Data Class(纯稚的数据类)
类除了数据和数据访问函数,没有其他的功能函数。
21、Refused Bequest(被拒绝的遗赠)
超类中有子类不想继承的数据或行为。
22、Comments(过多的注释)
过多的注释表明代码不够清晰。