• 为什么代码后期维护的成本高


    初学者总是认为代码写好了,把程序给跑起来了,这事就算完了。想象电器商,你就知道绝不是这样的,一件电器卖出去了,那么通常商家还得为我们保修一两年,为他们可能犯的错误买单。写程序也是这样,程序是写好了,但是你犯了的错误不能让用户去解决,我们也不希望用户去解决,因为他们常用的解决方案就是不用你的用别人的。

          当错误发生的时候,你需要做这几件事情:

    1、看以前的代码,问以前写代码的老人(这一步通常不能省,因为你必须要了解业务,才能对软件进行修改)

    2、你需要搭建一个测试环境。搭建一个测试环境,通常意味着你要为连调相关的软件,这通常是一个比较不好搞的活。因为你可能需要修改其他软件的代码以便适应测试的要求,过后还得改回来。可能你还得负责统筹的工作,以便让大家为一个错误放下手头的工作。你需要学习跟代码相关的知识。

    --想要修改一个代码通常不是想象中的,找到bug,修正它,这么简单。

    3、你得写一个测试报告,向感兴趣的人汇报工作。

    4、还没完,你得跟踪错误,如果又发现引进新的错误,从1或2重新开始再一遍的循环。

    5、更新是一个麻烦事。主要有这么些东西:

    1)   原先部署的数据库脚本和程序你都得再更新。

    2)   跟部署有关的文档需要做一些修改

    3)   当你的系统是异构的,涉及到n层架构(这里的架构不是指代码中的分层,而是指可能有数据库服务器,web服务器,通信服务器这类的东西),每层架构几乎都要重新部署一次,部署又包括备份文件、数据库、更新程序等操作。

     6、心态问题:为什么是我来解决这个操蛋的东西?我必须承认,学习新的技术对于开发人员来讲远远比维护别人或者自己的臭代码更激动人心,另外,在大家的看来维护软件的价值远远没有开发一个软件的价值高,当然除非你遇到了一个可以把整个公司撂倒的bug,这时候大家就重视起来了。不然,一般人家就觉得你就缝缝补补,这能有什么?关键是,对他们是缝缝补补,但是在你这边有时候得痛下决心地大刀阔斧、有时候又得小心翼翼地穿针引线。

  • 相关阅读:
    [Go] 理解(*interface{})(nil) 赋值的变量是否为nil
    [Linux] 理解CPU缓存的伪共享问题
    [MySQL] 理解InnoDB并发高的原因
    [Go] 理解计算机负数的表示以及整数范围
    [Go]理解golang项目性能分析工具trace
    [Go]理解golang项目性能分析工具PProf
    [Go] 理解切片slice扩容
    [javascript]解决多个版本的jquery库或者$冲突
    [Linux] 理解Reactor 模型
    [Linux] 理解I/O多路复用
  • 原文地址:https://www.cnblogs.com/kissazi2/p/3208464.html
Copyright © 2020-2023  润新知