这两天,同事朋友圈刷屏了“一名码农因为代码不规范枪杀同事”的消息,几位程序员同事也借此吐槽一下。不过,我们顺藤摸瓜找到了英文报道原文,发现外媒只报道了枪击事件的事实,并没有澄清枪击事件的原因。也就是说,所谓“代码不规范”的原因,可能只是国内外网友的评论或猜测。.据外媒报道,上周三上午,一名美国员工在位于威斯康星州的美国企业资源规划软件(ERP)开发商WTSParadigm的办公楼枪杀了4名同事,造成1人生命垂危,2人重伤。最终,警察赶到并开枪击毙了行凶者,行凶者被送往医院后死亡。据了解,袭击者是WTSParadigm的一名员工。事后,他的同事在接受采访时表示,当时都在工作,但枪声突然响起……目前,由于肇事者已经去世,枪击事件的原因已成未解之谜,警方没有提供调查的细节。“不规范代码”为何成为“诱因”?一篇在朋友圈广为流传的10W+文章,标题赫然写着“因为代码不规范,码农出手……”,似乎给事件画上了句号,同时引发了大范围的讨论程序员的抱怨浪潮。在本文中,我们暂时不讨论枪击事件的原因。毕竟那个斯里兰卡人已经去世了,调查取证应该是警察叔叔的工作。下面我们就来说说为什么“非标准代码”这种炮制的杀人动机会引起如此大的共鸣?一个团队中的程序员能力各不相同,有的团队或公司不一定能要求代码标准。上面提到的炮制理由中,“不写注释,不遵循驼峰命名,括号换行,最重要的是每天gitpush-f等等”,没有括号,没有pre-编译方式,使用过时的方法等等,都是代码的违规行为。不规范的代码不一定会导致枪击,但肯定会造成很多问题,甚至会带来一些安全漏洞:影响团队合作,降低效率:对于共同完成项目的团队来说,如果没有统一的代码规范,当代码最后整合,可能会出现名字看不懂,或者阅读过程一直问,导致团队效率低下,甚至成员之间发生冲突的情况;比如gitpush-f会覆盖掉所有其他人的劳动成果,一旦发生就会被阻塞。全力围攻。维护成本增加:代码不规范导致可读性降低,后期代码维护会消耗更多的人力甚至财力成本;一旦代码越来越多,全面维护将难以为继,对运维人员造成极大伤害。负担。造成各种BUG:如果输入输出参数、异常处理、日志处理等不规范,很容易造成很多低级BUG,而且很难找到BUG的原因。不利于代码审查,甚至产生安全漏洞:代码审查是纠正代码错误,确保开发周期顺利安全运行的重要步骤。如果代码不规范,会增加codereview的工作量和难度,导致codereview毫无根据,费时费力。在某些情况下,非标准代码也可能导致安全漏洞。此前Morpheus智能合约的重大安全漏洞都是由大写错误引起的。不利于程序员自身的成长:有些人可能没有意识到代码规范的重要性,有些人虽然知道但由于项目时间紧、流程繁琐而没有遵守。这与当前开发过程和安全之间的关系非常相似。很多人为了速度牺牲了前期必要的流程,反而给后续的工作带来了更多的麻烦。事实上,标准化的代码有助于理解开发语言、模式和架构,也有助于提高开发水平。对于公司和团队来说,制定符合实际情况的开发规范并不难。重要的是大家认识到规范的重要性,养成规范的习惯,并坚持执行。不管怎样,这个半真半假的新闻至少引起了人们对代码规范和安全的讨论和关注。***,愿逝者安息,生者自强。
