整理第三章的内容,关于代码的坏味道,这些往往也是可以进行重构的信号。
1. 重复代码。这个是非常常见的代码结构问题,这样的代码问题也很明显:难以维护,重复代码意味着当一份代码改动时,另一份也必须做出相应的改动,否则就会出现不一致的问题。这种情况应该提取共同代码。
2. 过长函数。函数过长意味着函数很复杂,处理了好多内容,违背单一职责,同时,程序愈长愈时难以理解,也很难为其起一个合适的可以表其意的名字。常见的应对方法时按功能将函数拆分。
3. 过大的类。过大的类,其承担的职责也就越多,意味着使用它的地方越多,难么就会有很多的与该类相关的代码(实例变量等等),又会带来重复代码的问题,需要做的是将该类拆分提取。
4. 过长参数列表。这样的问题也很明显,函数调用端很容易出问题,因为参数过多,使用起来很容易出错,拆分函数或者传递一个完整对象(如果多个参数来自于同一个对象)都是可行手段。
5. 发散式变化。就是一个类的受多种变化的影响,这些影响往往是不同方向上的。这种情况应该将不同的变化原因分别抽离了出来。
6. 散弹式修改。指一种变化会引发多个类相应修改。此时应该把多出修改的地方集中到某一个现存或者新建的类中。
7. 依恋情结。是指某个类的函数或者代码依赖其他类的内容多过其自身,此时应该进行代码迁移,迁移至其最依赖的类当中。
8. 数据泥团。
9. 基本类型偏执。
10. Switch惊悚现身。代码中出现了大量的switch/case语句,这种情况往往可以使用多态消除掉。
11. 平行继承体系。指要为一个类增加一个子类,也必须为另一个类增加一个子类。
12. 冗余类。指类并没有体现其应有的价值
[读书笔记] 重构改善既有代码的设计(2)
最新推荐文章于 2024-01-12 10:13:56 发布
本文是重构系列读书笔记的第二部分,重点介绍了22种常见的代码坏味道,包括重复代码、过长函数、过大的类等,并提供了相应的重构策略,如提取共同代码、拆分函数、减少耦合等,旨在提升代码质量和可维护性。
摘要由CSDN通过智能技术生成