《重构-改善既有代码的设计》读书笔记

本文是《重构-改善既有代码的设计》一书的读书笔记,介绍了重构原则和常见代码坏味道的识别与改进,强调了构建测试体系的重要性。通过一系列重构方法,如重新组织函数、在对象间搬移特性、简化条件表达式等,提高代码可读性和可维护性,降低修改成本。此外,还探讨了大型重构策略,包括领域划分和责任梳理。
摘要由CSDN通过智能技术生成

重构:对软件内部结构的一种调整,目的是在不改变软件可观察行为的前提下,提高其可理解性,降低其修改成本

1. 重构原则

  1. 重构应该随时随地进行,而不是专门安排时间进行重构
  2. 添加功能时重构
  3. 修补错误时重构
  4. 复审代码时重构

2. 代码的坏味道

学会判断一个类有多少实例变量算是太大,一个函数内有多少行代码才算太长

  1. 当在多个地方coding同样的代码时,应该及时抽离成函数,然后进行调用
  2. 当一行或者多行代码无法直接看出其含义时,应该抽成一个函数,并对这段代码的工作进行合理的命名
  3. 当类太大时,应该及时的把类中的函数、字段等按照各个职责、行为等进行抽离
  4. 如果一个函数的参数列太长了,应该构建一个类进行保存并作为参数传递
  5. 尽量使一个对象只由一种变化而引起变化。比如说一个类,类中包含金额字段,可以在类中增加方法对这个金额进行加减,而不是通过set方法进行直接赋值。
  6. 返回的场景,以null对象代替null值,避免出现空指针异常。然后在具体的业务逻辑中,在无法获取到对应的值时,再中断流程或跳出本次循环。
  7. 当有一部分麻烦的代码,想通过注释进行解释时,可以考虑先重构这一块,把各个代码段以函数代替,并在名称中按照动作和行为取名,看看是否能取代注释。

3. 构建测试体系

  1. 确保所有的测试都是完全自动化的,让程序检查自己的结果。
  2. 当如果有改动时,只需要运行测试程序,就能检查代码是否存在问题。如果有业务的改动,则需要把测试程序一起修改掉。
  3. 当遇到一个bug时,应该及时的编写一个单元测试来检查,并在修改后重复运行测试程序,检查是否正确。
  4. 尽量多考虑边界情况,因为边界值比普通的case更容易出现问题

4. 重构列表

  1. 构建一个重构的记录表,并且在里面写上名称、动机、做法以及对应的范例。

5. 重新组织函数

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值