敬畏每一行代码

前几日阿里云故障,次日官方在声明里具体阐述故障原因,最后写道“敬畏每一行代码,敬畏每一份托付”。

每个程序员的心里是否敬畏每一行代码不可而知,但填好每一个坑是每个程序员的必修课。

01

你是否经常遇到这样的情景:负责开发的项目遇到线上bug,心想这不是我的锅,先不管了,放着吧;代码写完后,隐隐感觉有问题,可程序跑得通,先用着吧;接手一个老系统,这什么破代码,算了,改吧改吧将就用吧……

今天绕过的坑明天将加倍回来:

下次再改这块代码你仍然遇上它,只能硬着头皮一行行捋代码解决;线上某种场景触发问题代码,造成意想不到的崩溃;老系统改起来太费时间和容易踩坑,不如花时间重构。

测试向你吐槽你写的bug,你否认道,这是前人挖的坑。PM改需求时说这里只加了个小功能,等到你开发时刚要挖坑,轰地掉进一个天坑里。你有没有发现,每天的工作实则是在填一个接一个的坑。

填坑力,是程序员要具备的核心技能之一。

02

填坑力说到底是解决问题的能力。

还记得自己上一次快速成长是什么时候吗?是往做了一年的系统上CtrlC,CtrlV?还是去给人讲你熟悉的业务框架?

人无法在顺境中成长,而是在逆境中成长:新跳槽一家公司学习全新业务和技术框架,一边闯祸一边改进;公司想引进某项新技术,你被指定在一个月内完成迁移,于是你捉紧时间下班后扒技术文档,周末在家写demo……

从坑里摔倒爬起后才明白,先前遇到的问题,其实是成长机会。

几年前震惊互联网的“3Q大战”,360给腾讯挖了个天坑,腾讯艰难填坑对战。而后马化腾给员工内部信写道,如果没有360的发难,我们不会有这么多的反思和感悟。或许未来有一天,当我们走上一个新的高度时,要感谢今天的对手给与我们的磨砺。

随后腾讯改变战略发展方向,走向“开放”。

我们似乎一直活在坑里头:挖坑的挖坑,掉坑的掉坑,填坑的填坑。可不管乐不乐意,人只有努力把身下的坑填好,然后去下一个坑,如此往复,才有真正的成长。

03

虽然程序员通常主张“我的锅你来背,我的坑你来填”。但是低级坑请别挖:

1.天坑:不写注释

排期紧张,新人海宇匆匆忙忙地将代码堆好便申请提测。可他的TL一句话将给他打回去重写:一行注释都不写谁能看懂!

有一位开发说,注释和代码同等重要,注释要写的清楚明了,让测试甚至是PM能读懂你的代码,这才算一个合格的程序员。

2.山坑:不写接口文档

有些公司的前后端联调基本靠吼,“哥们,某参数少传了”、“这个字段得大写”、“你传这么多我没用,算了,放着吧”……

曾见过一个测试reject开发的邮件:前端没传某参数,导致流程跑不通,reject。

技术人员通常不爱写文档或者不愿意在文档上花时间,导致前后端各开发各的,没有规范标准,如需和外部系统对接时,又得捋一遍代码找接口参数。接口文档能节约联调沟通时间和减少bug引入,提高代码质量。

3.地坑:不考虑拓展功能

代码不解解耦,不考虑未来可能会拓展的设计,无疑是在给队友挖坑。

小袁接手一个烂尾项目,上线后需要初始化数据,怎么也找不到批量处理接口。打电话问已离职的前同事,“什么?你当时只写了跑单个数据的接口,没写批量的?”

除了上面几个坑外,还有底下的挖坑指南:

不实时容错,程序只按照自己脑子“理所当然”的轨迹运行;

将判断放在一层层深不见底的逻辑里;

一个方法写了上千行,没人敢动;

从不自测。

掉坑容易填坑难,程序员之间最铁的关系是,当我确定前方有坑后,立马告诉他人这里有坑,你不要踩了,等我填好后再来吧。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值