您当前的位置: 首页 > 

柳鲲鹏

暂无认证

  • 0浏览

    0关注

    4642博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文

编码基本功:千万不要重写,找到问题后逐步改进,平稳过度交接

柳鲲鹏 发布时间:2020-11-16 08:38:33 ,浏览量:0

  每个程序员都觉得自己水平高,看不上别人的工作。比如说,在维护别人代码的时候,动不动就鼓吹要重写。前一段时间,我司头目跟我说要重写,我没在意,结果搞起来才发现,完全从头开始。吾斥之为好大喜功,不顾事实搞空中楼阁。

  吾一直反对从头完全重写,即使是参考已有的东西。理由?

  • 你水平不比别人高。如果你觉得高,请拿出令人信服的证据。
  • 你某一点上见解比别人好,这也正常,不要盲目扩大。
  • 人的知识点可以通过学习增加(即使如此,学习的人也少之又少),而能力、思路是无法通过学习提高的。比如说,你跟高手下棋,一盘棋输了,从头再来还是输。为什么?你能力就这么高,下多少次也是这样。
  • 你的能力也许提高了一点(非常难),其他人并不会提高。除非你从头到尾全部贯通。比如吾一个人把WP的整个布局绘制打通关,所以怎么搞都可以;或者说公司招了个牛人,也能一个人打通关。这是特例,不能推广。
  • 项目开始的时候,是会老老实实认真一点,比如说会加点注释。附着工作的推进,过了开始一段时间后,还没到项目中期就已经乱套了,基本就是看都不看全部搬过来——这不是违背了重写的初衷吗?意义何在?比如现在就已经进入了盲目照搬阶段。
  • 工期不可预测。老系统本来还能将就用,完全重写的时候,老问题没解决,新问题不断增加,而且出错了也不知道(特别是细节上)。出个可用版本遥遥无期,这不是开玩笑吗?

 

  所以,吾一直主张:

  • 逐步改进。你有新的想法,很好,那就逐步实施。
  • 新旧并行。通过桥接方式,逐步完善新体系的同时,逐步替换老体系。
  • 新旧替换过程中,要不断的积累测试案例。
  • 修改一个变量,就切换到老体系,用来验证问题是不是新改出来的。

  这样,新旧平稳过度交接,什么都不影响。等新系统建立之后,你已经对此完全掌握了。这个时候再重写……大哥你不是已经重写完了吗?

  有朋友就会说了,吾不会新旧并行。大哥你新旧并行都不会,还奢谈什么重写?你根本没有这个能力,为什么要暴露?要自讨苦吃呢?

关注
打赏
1665724893
查看更多评论
立即登录/注册

微信扫码登录

0.0480s