zoukankan      html  css  js  c++  java
  • 小程序推翻重来的缺点

      我呆了几个公司,发现一个有趣的问题。当B程序员接手A程序员编写的程序后,该程序在运行过程或测试过程中出现问题或瑕疵,那么B程序员第一想法不是去重构程序,而是推翻重来,特别是规模不太大的软件或程序。A程序员是程序的初步开发者,任何一个程序的第一个开发者总是不容易的,特别是小程序,小程序往往需要程序员自己去做需求收集、设计编码、测试验证的全部工作。所以在前期开发完成后,总会遇到一些问题。软件的成型并不是一步到位的,需要一个反复试错,发现问题和解决问题的过程,测试团队存在的意义就在于采用专业的手段帮助开发团队发现错误。当B程序员接手后,在一个既有的产品上发现瑕疵是十分容易的。牛B如微软开发的Office软件,消费者也很容易挑出一些问题或新的需求来,况且,有些人在没有深入了解过Word的强大之前,往往会吐槽Word太复杂或执行效率低等等,其实我只需要一个Notepad而已!如果这个人刚好是程序员,他往往会自己动手,按照他的想法去打造他的Notepad。Office也在一年一年的更新(是在原有的基础上更新,不是重来。)。
        B程序员发现问题后,往往会埋怨他的前任写的代码不行,有推翻重来的冲动。能重用的代码块则重用之,能优化的代码则优化一下。再把自己的想法加上去,再推出一个版本。然后牛B叉叉的对领导说,上个版本是垃圾,我把它重新开发了。等到下一个程序员C来接手该软件时,又开始了重复上一过程……浪费的是公司的人力资源,得到好处的是程序员B。后面接手的程序员B既可以学习前人在该软件开发中的一些技术技巧,又能吸取经验教训,把产品重新开发一遍,然后当成自己的功绩。
        这样做无疑很伤A程序员的心,A程序员尽心尽力的把软件做到那一步可能也是不容易的,B程序员往往因为一些很小的问题,全盘否定A程序员的劳动成果。严重挫伤A程序员的积极性。
        说到浪费公司的资源,在软件公司,往往是资深程序员作为团队的Leader,如果A、B都是那个团队的Leader,那么该团队一遍又一遍的在重复着做一些事情。
        许多时候,B程序员开发的新版本还不如A程序员开发的版本,导致这样的因素即可能是B没搞懂会忽略原程序中的一些技术细节或业务细节。但因为B程序员的面子问题,会强推自己的版本,伤害的用户的体验和公司的品牌。

        程序员,真是个奇怪的动物!

  • 相关阅读:
    js判断网页是否加载完毕 包括图片
    文本框只能输入数字,输入其他自动过滤 几种方法
    pagebean pagetag java 后台代码实现分页 demo 前台标签分页 后台java分页
    nodejs微信公众号快速开发|自定义关键字回复
    Putty使用ssh方式登录服务器
    什么是Q Learning?
    使用python显示当前系统中的所有进程并关闭某一进程
    树莓派3搭建低成本NAS实现文件共享
    Fortran变量的定义和声明新写法
    Fortran中将多个文件进行编译运行的方法
  • 原文地址:https://www.cnblogs.com/kangyifei/p/3371524.html
Copyright © 2011-2022 走看看