
文章图片

文章图片

公司曾经发生一个有趣的事情 。
01首先介绍一下我曾经的公司代码 , 大概5年前 , 公司要升级gcc代码 , 试试转docker , 放到云环境上去 , 然而这批代码在2000年的时候就有了 , 最早的部分可能写于1980年代bell实验室 , 第一批维护升级做需求的人早就退休了 , 第二批也退休了 , 每一行代码动起来都胆战心惊 。
然后老张那天上班忽然大叫起来 , 大声质问谁改的代码 , 这么明显的bug都能出 , 还不写注释 。
由于是生产出现了重大事故 , 不然老张也不会那么生气 , 系统内存泄漏 , 系统崩了 , 影响客户使用 。
当时项目经理就发话了 , 你查一下git的提交记录 , 看看是谁提交的代码 , 查出来全公司通报 , 扣他年终奖和项目奖金 。
然后老张说了一句 , 看起来很生气 , 说 , 我已经在查了 。
大概过了几分钟 , 只听见老张说:不可能吧 , 这怎么可能呢?
于是项目经理就凑上去看 , 发现这段代码是这老张一年前自己提交的 。
当时的老张别提多尴尬了 。
很难想象 , 这个项目的代码会有多狗屎 , 资深程序员动了之后竟然不知道是自己写的 , 那么其他程序员谁还敢动?
02然后老张被全公司通报批评 , 要求项目组整改 , 并且出检讨 。 现在你们能理解了吗?代码能跑 , 就不要改 , 你改了说不定会出什么幺蛾子 。
改代码不是一个人的事情 , 而是开发测试共同的工作 , 能跑起来的 , 能跑起来代码即使看起来有多混乱 , 也是经过专业测试通过的 。 而你改过的代码 , 短时间无法经历旧代码那么充分的测试 。 就可能存在暗病 。 除非公司决定重构代码 , 才能去动 。
并且 , 能跑起来就不要动的代码 , 一般都会被我们称为屎山一样的代码 , 相信我们都有着被屎山支配的恐惧 , 被困在屎山受屈辱的经历 , 驾驭屎山的唯一方法 , 不是改动 , 而是不改动 。
我想说的是 , 如果你的代码能跑 , 但你不知道它为啥能跑 , 你还是不要提交这种代码了 , 搞懂了再提交 。 之前有个同事写了个代码 , 功能是为容量为1000的某个服务器的用户分配一个唯一的ID 。 他的做法也很简单 , 也能跑?但上线后 , 这个服务器的在线用户数大约在800-900左右 , 会大概率导致服务器宕机 。 看了他的做法 , 是在1-1000里随机取个数字 , 如果这个数字有人用了 , 随机换个数字 , 再判定是否有人用 , 如此重复 。 当用户数多了 , 分配新ID时 , 就会频繁撞ID , 就很难跳出那个循环 。
【程序员|为什么程序员会有代码能跑就不要动的观点?是有毒吗?还是怎样?】所以 , 代码跑起来就不要动了 。
- 为什么科学家表示人类“灭绝”的可能性极低?这些理由你赞同吗?
- 为什么科学家知道太阳的原理,却无法制造出人造太阳
- 为什么科学家用昆虫翅膀的起源质疑进化论?达尔文到底是对是错?
- 为什么夜空是黑的?你以为的“正常”,或许隐藏着不知道的秘密
- 为什么温度高到一定程度的物体,就会发光?
- 为什么现在很少有人提及“克隆技术”了?“克隆技术”有何缺点?
- 为什么同学群里,很少有人说话,大部分人都选择沉默或者屏蔽?
- 科学家为何要在太空放火?会有什么后果?答案让人意外
- 科学家解释黑洞是不可视的,为什么我们会发现它
- 腾讯|1080P是什么意思网路用语,为什么是骂人的
