重构第二章:重构原则

2.1 何谓重构

    对软件内部结构的一种调整,目的是在不改变软件可观察行为的前提下,提高其可理解性,降低其修改成本。

    使用一系列重构手法,在不改变软件可观察行为的前提下,调整其结构。

    添加新功能时,你不应该修改既有代码,只管添加新功能。重构时就不能再添加功能,只管改进程序结构。

 

2.2 为何重构

    重构改进软件设计。完成同样一件事,设计不良的程序往往需要更多代码。因为常常代码在不同的地方使用完全相同的语句做同样的事。因此改进代码的一个重要方向就是消除重复代码。

    重构使软件更容易理解。

    重构帮助找到bug。

    重构提高编程速度。

    

2.3 何时重构

     三次法则。事不过三,三则重构。

    修补错误时重构。

    复审代码时重构。

    我们希望程序:1)容易阅读; 2)所有逻辑都只在唯一地点指定; 3)新的改动不会危及现有行为; 4)尽可能简单表达条件逻辑

 

2.4 

    计算机科学是这样一门科学:它相信所有问题都可以通过增加一个间接层来解决。

    1)允许逻辑共享。

    2)分开解释意图和实现。

    3)隔离变化。

    4)封装条件逻辑。

 

2.5 重构的难题

    数据库。

    修改接口。

    不要过早发布接口。请修改你的代码所有权政策,使重构更顺畅。

    难以通过重构手法完成的设计改动。

    何时不该重构:重写,或者项目已近最后期限。

 

2.6重构与设计

2.7 重构与性能

     时间预算法

     持续关注法

     统计数据

 

2.8 重构起源何处

 

 

参考资料:

    《重构-改善既有代码的设计》

posted @ 2020-07-19 20:05  diameter  阅读(264)  评论(0编辑  收藏  举报