我知道你们写代码都喜欢一把梭,if else for ,业务流程写完,然后就开始三部曲。git commit -> git push -> publish
停停停,憋这么自信好莫,你还有很多事情可以做。
step1: 拜托你,再次检查一下所写的代码是不是符合业务需求。
有的工程师写完的一堆通过编译器检查的代码,压根就没符合业务需求,或者说业务真正的需求。
比如:
请帮我去街上买两个包子,如果看到西瓜,买一个。
然后某 程序员 的实现就是
if( see watermelon){
buy a watermelon;
return;
}
buy two baozi;
WTF????
你是瓜娃子么?
step2: 拜托你,再检查检查系统边界吧。
totolNumberOfBaozi = totolNumberOfBaozi - numberOfBaoZi;
好了,突然有人喊了一句,给我来 -1 个包子,总包子数蹭蹭蹭增长,棒棒哒。给你100婚:100:。
setp3: 拜托你,再检查检查索引。
select * from baozi where size > 100g and size <10000g;
嗯,baozi1 这个有5g,不符合
嗯,baozi2 这个有5g,不符合
嗯,baozi3 这个有6g,不符合
嗯,baozi4 这个有300g,不符合
...100万baozi后
嗯,baozi1000000 这个有20g,不符合
嗯,baozi1 这个有45g,不符合
好了,基础表数据有1000万,每次都全表扫描,一上线,bingo,系统爆炸了。
setp4: 拜托你,再写写注释吧,比如上边的买包子程序写成这样。
if( catch 1129idj){
buy a 1#ewlj3-0;
return;
}
buy two @#MK@L;
好嘞,不写注释明天你自己就忘了兄dei。
setp5: 拜托你,打点有用的日志吧。
if( see watermelon){
buy a watermelon;
return;
}else if( see beautiful){
if(beautiful > 18){
buy naicha;
}
else{
boommmmm!!!!
}
}
buy two baozi;
好了,系统爆炸了,一点日志都没有,只能看到爆炸了。。。
setp6: 拜托你,试着把所有的能想到的监控全加上。
接口成功率啊,响应时间啊,错误告警啊,上下游告警啊,主机告警啊,数据库成功率告警啊,数据库响应时间告警啊。
setp7: 拜托你,针对告警想一下你的解决方案。
告警出来了,总得处理吧?提前想一想没什么坏处。
setp8: 拜托你,想一下怎么样让你的系统不会崩。
异地容灾?接口限流?接口防刷?服务降级?很多事情可以做,好好思考一下,好好思考一下。
setp9:拜托你,准备一下答疑吧。
作为一个工程师有好多时间都在答疑,无论这些问题是来自合作方,业务方还是客户,总会有很多人因为不了解你所写的系统逻辑而咨询你一些细节点,做好答疑文档、答疑 工具 可能会节省你很多很多的时间。
就酱,请敬畏你的代码,它们很强大,破坏力也很大。
以上所述就是小编给大家介绍的《工程师们你们写完代码后还做些什么》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!
猜你喜欢:- 老代码多=过度耦合=if else?阿里工程师这样捋直老代码
- Java 工程师该如何编写高效代码?
- 老代码多=过度耦合=if else?阿里巴巴工程师这样捋直老代码
- 一个前端工程师看完《代码大全》后的二三总结
- 给研发工程师的代码质量利器 | SOFAChannel#5 直播整理
- 数据工程师,常用的几个数据库和网络服务分享,python代码
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
Head First HTML and CSS
Elisabeth Robson、Eric Freeman / O'Reilly Media / 2012-9-8 / USD 39.99
Tired of reading HTML books that only make sense after you're an expert? Then it's about time you picked up Head First HTML and really learned HTML. You want to learn HTML so you can finally create th......一起来看看 《Head First HTML and CSS》 这本书的介绍吧!