《重构》读后感(二)

仓廪实而知礼节,衣食足而知荣辱,这物质文明与精神文明的层级关系也一语道破了程序设计的层次级关系。程序设计也是如此,先满足了功能需求,然后再对代码进行重新整理、组织,达到易读、易改、易扩展。这种对代码重新整理的过程就叫代码重构。

  重构在不同的研发模式中的作用不尽相同。比如,在敏捷开发的研发模式中,重构的作用相当重要。敏捷开发运用迭代法进行产品开发,在迭代过程中分析、方案、代码同时发生,并且弱化方案,强化代码设计。在开发过程中,每次功能迭代程序员都根据现有代码进行重构,尽量运用已有的代码或函数,或者改造现有代码使其满足新功能需要。这样使代码实现高利用率,改善软件的质量、性能,使其程序的设计模式和架构更趋合理,提高软件的扩展性和维护性。

  在过程式研发模式中,前期产品开发阶段重构的作用不太明显,而到后期产品维护阶段重构则较为重要。因为过程式研发在代码设计之前做了一系列工作——需求、方案,这些工作要求产品的功能和方案固定化,并且如果方案做的特别细的话,每个函数的实现方式,甚至代码基本逻辑都已固定,到代码实现阶段只要把方案转化成代码就是。也就是说,在方案阶段已经把重构的工作做的差不多。在后期维护过程或功能添加的过程中,则会参考之前的代码。

  我们目前用过程式研发模式,而我的研发水平处于实仓廪阶段,在方案设计时只是注重功能实现,而没有更多地考虑重构,后期维护也只是注重功能增加。久而久之,代码将会架构模糊,函数重用率低,质量低下,功能增加困难。看了《重构-改善既有代码的设计》之后,昨天我试着把事件模块做些简单的重构,不到一天竞重构掉了近200行代码。由此可见在重构方面做的还很不够。思想决定行动,意识决定高度,正如在实仓廪阶段也要不仅仅为了吃个饱,要把产品当成一种艺术品来做,在细处打磨。现在已经有重构的意识,接下来会在添加功能、修补错误和复审代码时尽量运用重构法则,对代码进行整体把握,强化重构。砍柴不误磨刀工。

  说了这么多,再说说什么重构是什么,什么时候需要重构(来自《重构-改善既有代码的设计》)。

  重构:为保持代码易读,易修改,在不改变代码外在的前提下,对代码做出修改,以改进程序内部结构,提高其可理解性,降低修改成本。

  要重构的代码:可有可无的临时变量,重复代码,过长函数,函数功能过大,过长参数列,发散式变化,散弹式修改,数据泯团。

  ,“任何一个傻瓜都能写出计算机可以理解的代码,惟有写出人类容易理解的代码,才是优秀的程序员”——作者如是说。

posted @ 2021-09-24 17:32  敲敲代代码码  阅读(64)  评论(0编辑  收藏  举报