内容简介:这两天,小姐姐的朋友圈被“码农因为代码不规范问题枪击同事”的新闻刷了屏,几名程序员同事也借此吐了吐槽。但是,我们顺藤摸瓜找到了英文报道原文,发现外媒只是报道了枪击的事实,并没有阐明枪击的原因,也就是说,这个所谓“代码不规范”的原因,可能只是国内外网友的评论或猜测。据外媒报道,本周三上午,美国有一名程序员在位于威斯康星州的美国企业资源规划软件(ERP)开发商 WTS Paradigm 的办公楼枪击四名同事,导致一人情况危急,两人重伤。最终警方赶到并枪击了行凶者,该凶手被送往医院后不治身亡。
这两天,小姐姐的朋友圈被“码农因为代码不规范问题枪击同事”的新闻刷了屏,几名 程序员 同事也借此吐了吐槽。但是,我们顺藤摸瓜找到了英文报道原文,发现外媒只是报道了枪击的事实,并没有阐明枪击的原因,也就是说,这个所谓“代码不规范”的原因,可能只是国内外网友的评论或猜测。
枪击事件还原
据外媒报道,本周三上午,美国有一名程序员在位于威斯康星州的美国企业资源规划软件(ERP)开发商 WTS Paradigm 的办公楼枪击四名同事,导致一人情况危急,两人重伤。最终警方赶到并枪击了行凶者,该凶手被送往医院后不治身亡。
据了解,这名行凶者年龄为43 岁,是 WTS Paradigm 的程序员,已经工作一年多了。事后,其同事接受采访时表示事情“完全出人意料。我们都是搞软件开发的。我们是很友好的团队。”当时他们都在工作,枪声却突然响起……
事发后第二天,警方召开了记者发布会,在会上警方表示该行凶者没有犯罪记录,枪击事件发生时独自作案。目前,由于该行凶者已经离世,所以枪击的原因成了未解之谜。
为什么“代码不规范”成了枪击的诱因?
在朋友圈广为流传的某篇 10W+ 文章里,标题赫然写着“因代码不规范,码农枪击……”,似乎已经为事件盖棺定论,同时引发了一大波程序员的吐槽。在本文里,我们暂且不去讨论这起枪击事件的起因,毕竟斯人已逝,调查和取证本该是警察叔叔的事。这里我们就来说说,为什么“代码不规范”这条炮制出来的杀人诱因,竟然引起了那么多共鸣?
一个团队中程序员能力不一,有些团队或公司可能并不会可以要求代码规范。在前文提到的炮制理由中“不写注释、不遵循驼峰命名、括号换行,最主要还天天 git push -f 等”,还有不加大括号、不采用预编译模式、使用过时方法等,都是代码不规范的表现。
代码不规范不一定会引起枪击,但肯定会造成很多问题,甚至带来一些安全漏洞:
1. 影响团队合作,降低效率: 对于共同完成项目的团队而言,如果没有统一的代码规范,每个人的代码会风格迥异,最终整合代码时,可能会出现看不懂命名,或者阅读过程不断询问的情况,导致团队效率低下,甚至造成成员之间的矛盾;例如 git push -f,把别人的劳动成果全部覆盖掉,出现一次就会遭到全员围攻;
2. 提高维护成本: 代码不规范导致可读性降低,后期的代码维护会耗费更多人力甚至财力成本;一旦代码越来越长,最后的维护就难以为继,给运维人员造成很大负担;
3. 引发各种 bug: 如果输入输出参数、异常处理、日志处理等没有规范,很容易导致大量低级 bug,还很难找到 bug 的原因;
4. 不利于代码审查,甚至造成安全漏洞: 代码审查是纠正代码错误,保证开发周期安全顺利进行的重要一步。如果代码不规范,就会加重代码审查的工作量和难度,导致代码审查工作没有根据还浪费时间。某些情况下,代码不规范还会造成安全漏洞,此前 Morpheus 智能合约爆出的重大安全漏洞 ,就是大小写错误造成的;
5. 不利于程序员自身的成长: 有些人可能没有意识到代码规范的重要性,有些人意识到了但由于项目时间紧、流程繁琐等原因而不去遵循。这跟当前开发流程与安全之间的关系很像。很多人为了速度而牺牲前期的必要流程,却给后续的工作带来了更多麻烦。其实,规范的代码有助于理解开发语言、模式和架构,也有利于提升开发水平。
对于公司和团队而言,制定符合实际情况的开发规范并非难事,重要之处在于每个人自己认识到规范的重要性,以及养成规范的习惯并坚持贯彻。
不管怎么说,这则半真半假的新闻至少引起了人们对代码规范和安全性的重视。
最后,祝逝者安息,生者自强。
*参考来源: theepochtimes ,作者 AngelaY,转载请注明来自 FreeBuf.COM
以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网
猜你喜欢:本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
Professional JavaScript for Web Developers
Nicholas C. Zakas / Wrox / 2009-1-14 / USD 49.99
This eagerly anticipated update to the breakout book on JavaScript offers you an in-depth look at the numerous advances to the techniques and technology of the JavaScript language. You'll see why Java......一起来看看 《Professional JavaScript for Web Developers》 这本书的介绍吧!