重构笔记

重构笔记


1、好代码的两个重要标志:易读、易改。

2、重构的定义:在不改变代码的外在行为的前提下,对代码做出修改,以改进程序的内部结构。

3、当你发现自己需要为一个程序添加一个特性,而代码的结构使得你不能很方便的这么做,那么先重构那个程序,使得特性的添加比较容易进行,然后再添加特性。

4、设计不良的程序,往往需要更多的代码,因为在不同的地方存在使用完全相同的语句在做同样的事情。

5、重构可以改进设计,而改进设计的一个重要方向,就是消除重复代码。代码数量的减少不会使系统运行更快,然后代码数量的减少使得未来可能的修改变得容易的多。

6、重构可以使得代码更易读,而随着代码逐渐简洁,我们可以看出一些以前看不到的设计层面的东西。如果不对代码做这些修改,我们可能永远看不到他们。

7、重构可以把我们待到更高的理解层次上。

8、重构可以使我们深入了解代码的行为,而对代码的深入理解,可以帮助我们找到bug。在搞清楚代码结构的时候,我们会弄清楚代码所作的一些假设的正确与否,这是一个良好的习惯。

9、Kent Beck的名言:我不是个伟大的程序员,我只是一个有着一些良好习惯的好程序员而已。

10、重构可以使我们能够写出强固稳健的代码。

11、重构有助于提高编程速度。因为良好的设计才是快速开发的基础,没有良好的设计,可能一段时间你进展很快,但恶劣的设计很快使你的速度慢下来。你会把很多时间花在调试上,添加功能变得越来越难,修改时间越来越长。

12、重构的时间,有三个原则。分别是:添加功能时、修改错误时、复审代码(code review)时。

13、常态性的code reviews有助于在团队中传播知识,帮助更多人理解大型软件系统的更多部分。code review也有助于代码的清晰。

14、程序有两面价值:“今天可以为你做什么”,“明天可以为你做什么”,重构有利于在明天对软件进行修改和扩展。

15、代码会为代码引入很多间接层,重构往往会把大型对象拆成数个小型对象,把大型函数拆分成数个小型函数。

16、间接层的价值:
允许逻辑共享。例如一个子函数在不同地点被调用。superclass中的某个函数被subclasse共享。
分开解释“意图”和“实现”。
隔离变化。
将条件逻辑编码。

17、有一种重构是找出不值得的间接层,并拿掉他。这种间接层常以中介函数形式出现。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值