您的位置:首页 > 编程语言

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

2016-04-03 00:00 281 查看
在阅读这本书之前,我理解的重构是调整代码,让代码更加容易阅读。在我跟我同事的沟通中重构还包含了扩展功能的部分。

现在看来,我所理解的重构混淆了升级的概念,也只是了解了重构最表层的东西。重构的真正定义是:在不改变软件(这里的软件通常指一个方法)可观察行为的前提下,调整其结构。

什么是可观察行为?可观察行为是指使用软件所产生的结果。但是为什么要在不改变软件可观察行为的前提下,调整其结构呢?因为调整结构势必会改变代码的逻辑,既然逻辑都改变了又怎么保证你的重构没有问题呢。因此在不改变软件可观察行为的前提下,就是重构结果的测量标准。也只有在这个标准下,才能保证重构只是调整了软件的结构,而没有改变软件的可观察行为。

那么怎么测量软件的可观察行为没有改变呢?答案是单元测试。以前所理解的单元测试只是测试代码的功能。其实单元测试最大的作用是保证重构前后软件可观察行为的一致(代码只会编写一次,但会重构无数次)。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  重构