Unity探路营

重构的原则

2020-11-16  本文已影响0人  洪智

洪流学堂,让你快人几步。
本篇内容来自洪流读书会精选内容。

昨天我们已经了解到为什么要重构?接下来我们将从区分重构与性能优化、重构时我们的角色定位两个方面来解读一下重构的原则。

重构的原则

区分重构和性能优化

在真正开始介绍重构的原则前,我们需要对重构本身下一个定义,并在此定义的基础上与性能优化做一下区分。

重构本身是对软件内部结构的一种调整,通过使用一系列的重构手法在不改变软件所有功能行为的前提下,调整其结构以便提高其可理解性,降低后期修改的成本。

如果有人说起他们的代码在重构过程中有一两天时间不可以用,那我基本上可以确定,他们在做的事不是重构。

为什么这么说呢?

重构的关键在于运用大量微小而保持软件行为的步骤,一步步达成大规模的修改。每个单独的重构要么很小,要么由若干小步骤组合而成。因此,在重构的过程中,代码很少进入不可工作的状态,即便重构没有完成,也可以在任何时候停下来。

在这里可能有人会说你所指的重构不就是性能优化吗?

那么我们先来比较一下这两者,我们先看看重构与性能优化的相似之处:两者都需要修改代码,并且两者都不会改变程序的整体功能。

那两者的差别在哪儿呢?

两者的差别在于其目的:重构是为了让代码“更容易理解”、“更易于修改”,仔细想想这可能会使程序运行的更快,也可能使程序运行的更慢;而在性能优化时,我们只关心让程序运行的更快,而这样的初衷可能会使得到的代码更难理解和维护。

重构时我们的角色定位

上面我们介绍了何谓重构,接下来我们来看看要介绍的第二点,做重构这件事时我该如何定位自己?

在软件开发过程中,我可能会发现自己经常变换角色。首先我会尝试添加新功能,然后会意识到:如果把程序修改一下,功能的添加会容易得多。于是我换一种角色,做一会儿重构的工作。程序结构调整好之后,我又回到原来的角色上继续添加新功能。

新功能正常工作后,我又发现自己的编码造成程序难以理解,于是又去重构……

整个过程时间不长,但无论何时我都清楚自己在扮演哪种角色,并且明白不同人物角色对编程状态所提出的不同要求。
这是我们说的第二点,在重构中我们扮演的角色。

小结

今天我们从区分重构与性能优化、重构时我们的角色定位两个方面对重构的原则进行了解读,下次我将从重构带给我们什么、何时重构两个方面来为大家进一步解读重构的原则。


我是大智,你的技术探路者,下次见!

别走!点赞收藏哦!

好,你可以走了。

上一篇下一篇

猜你喜欢

热点阅读