• 修改代码的艺术阅读笔记-02


    我们从系统思维的角度来看一下遗留代码的修改方案。

    首先是遗留代码容易出现的问题。

    任何代码的修改都需要基于一个原则,那就是保证现有功能的不变。

    这是一个难点,越是大的系统,修改起来就越难,由此,开发团队在应对代码修改时往往会选择保守,能不动就不动,这又进而导致第二个问题,代码出现冗余。

    基于系统的增强回路原理,冗余越多,冗余的增加量就越多,再加上复杂系统具有反馈延迟的特性,等开发团队意识到代码已经难以维护的时候,一切就晚了。这个时候常见的手段就是引入一个新技术,借此推倒重来了。

    其次,关于修改代码的方案,从系统思维的角度来看。

    据系统组成:元素、关系、功能

    为了保证现有功能的不变,我们需要引入单元测试。由此,这个系统最终包含两方面的元素,一是被改动的代码,二是被添加的单元测试。

    而他们之间的关系,即功能代码与功能代码之间,功能代码与测试代码之间的关系,则需要考量,或者我们用软件开发中的术语-依赖。

    那么首先要解决的问题就是确定改动哪里和测试哪里。

    然后确定他们之间的依赖。

    再根据测试驱动开发(TDD)的原则,我们需要先编写测试。

  • 相关阅读:
    makedown
    前端
    关于阅读与自我认同
    Win10任务栏透明工具 TranslucentTB
    Linux文件属性
    解决vscode出现两个光标的问题
    一文搞懂vim复制粘贴
    解决vim选中文字不能复制的问题
    简单配置让iterm2用得更爽
    区块链相关在线加解密工具(非对称加密/hash)
  • 原文地址:https://www.cnblogs.com/yizhixiaozhu/p/14212334.html
Copyright © 2020-2023  润新知