4月23日读书日,全称“世界图书与版权日”,在广州天河图书馆开了一张借书卡,借了3本书回来看,其中一本就是重构手册-《重构》之姊妹篇。为什么借了这本呢,是因为我想了解一些想象中的重构和大家认同的重构有什么不同,下面我将逐一细说这个异同。
一、原来重构是小步前行,逐一重构
我以前认为重构是某个项目的大部分功能重新修改架构才是重构,看完这本书才知道重构可以是对一个属性,一个方法,一个类, 多个类进行重构,可以是小的修改也可以是大的修改重构。
二、从代码中能看出来的那些代码需要重构,但有些不能直接看出来
只要在代码中看到一点不对劲的警示信号,但是有的无法在代码中直接看到有什么问题。就像冰箱里的发霉变质食物,有的味道很臭,有的味道有点臭,有的食物变质了但是没有臭味,这跟代码的异味很相似。
三、重构是分重构周期的
重构是分重构周期的,要解决代码异味越小,重构周期越小。一般是分步走的,一小步重构一点代码(可以是某个属性或某个方法),小步走,按设定的重构周期完成。
四、重构是需要衡量是否完成的
重构有4个简单设计:1、运行所有测试;2、不存在重复的逻辑;3、要向程序员清楚地说明对其很重要的每一个意图;4、尽量少使用类和方法。
延伸阅读
- ssh框架 2016-09-30
- 阿里移动安全 [无线安全]玩转无线电——不安全的蓝牙锁 2017-07-26
- 消息队列NetMQ 原理分析4-Socket、Session、Option和Pipe 2024-03-26
- Selective Search for Object Recognition 论文笔记【图片目标分割】 2017-07-26
- 词向量-LRWE模型-更好地识别反义词同义词 2017-07-26
- 从栈不平衡问题 理解 calling convention 2017-07-26
- php imagemagick 处理 图片剪切、压缩、合并、插入文本、背景色透明 2017-07-26
- Swift实现JSON转Model - HandyJSON使用讲解 2017-07-26
- 阿里移动安全 Android端恶意锁屏勒索应用分析 2017-07-26
- 集合结合数据结构来看看(二) 2017-07-26
学习是年轻人改变自己的最好方式