工程师故事 | 谁规定写代码必须得写注释?

2019-01-11 12:34:26 来源:EEFOCUS
标签:

文/贪玩的乔治

 

据说,人体的细胞每隔七年就会全部更换一遍,从生理学角度上来说,七年后的自己已然不是今天的你,七年时光,虽不说脱胎换骨,但至少也是物是人非了。社会急匆匆飞速发展,万事万物都在自我变革中吐故纳新,现代社会的细胞-公司也大浪淘沙,老面孔逐渐消失,取而代之的新面孔慢慢变老,最终也慢慢消失不见,说实话,在一家公司能够呆够七年的骨灰级员工越来越少了。

 

前段时间,公司人事风云变幻,呼啦啦一下子走了十来号人,公司领导一边痛感仕途黯淡,为自己的前途命运忧心不已,一边想着怎么保住技术成果,顺利交接技术资料。有感于过去由行政人员处理资料交接的随意、马虎和搞笑,这次,破天荒地让技术人员担当起了技术资料交接的重任。笔者做为一名暂时没有透露出出走意向的骨灰级员工,三生有幸地被领导赋予了交接资料的任务。

 

‘把老子当枪使!’我不禁悻悻然地想,同时开始考虑怎么平稳地交接资料,既能向耍流氓的领导交差,又不至于破坏和离职员工多年的交情。‘尘归尘,土归土,一切荣耀归于主!’我想到这么一句话,然后确立了交接技术资料的原则:息事宁人,爱咋咋地!

 

公司列了一张技术资料交接清单:需求文档、可行性分析、设计方案、原理图、PCB、源代码、论文、专利、测试计划等等,安排离职的老同事张哥和我对接。看着这份资料交接清单,我在想,张哥只要给我一个能看懂、能跑起来的源代码,给我一份原理图和PCB,我就交差了,其它文档性的资料,爱给就给,不给拉倒。本着这种息事宁人的态度,我预感到交接工作应该会非常顺利地完成。

 

‘叮咚,’张哥在QQ上把交接资料给我传了过来。接收、下载、解压,一顿操作之后,我开始阅读起了张哥发给我的资料。

 

文档有那么三四篇,我打开一看,基本上空洞无物,算了算了,息事宁人嘛!

 

 

打开原理图和PCB一看,哎,原理图右下角的完成日期有点太早了吧,显然不是最后一版,算了算了,一切法得成于忍嘛,忍忍就算了。

 

打开源代码一看,嚯,那叫一个清爽,代码错落有致,紧密相间,有的缩进两个空格,有的缩进三个空格(为什么是奇数,好奇怪的说。)有的中间空了好几行,有的中间不空行。一个函数好多大括号都不知道到底是括到哪里,一个函数好几页看不完,一个源文件翻了好多页还没有翻完,更要命的是,里面居然一行注释也没有,看起来让人不仅头大,而且蛋疼!

 

一股热血涌上了我的脸庞,这次我没有绷住,“张哥,你这代码里怎么一点注释也没有啊?” 说好的息事宁人原则被我抛到了脑后,事后想起来,还有些惭愧。

 

“小李啊,这你就不懂了吧。”皱纹很快爬满了张哥的脸庞,他的表情不自然极了,透过厚厚的眼镜片,他睥睨着对我说。“优秀的代码都不加注释,我们要透过代码本身去理解代码,而不是通过注释去理解它。”他振振有词地说道。

 

做为软件一哥的我,苦笑了起来,对于这种恬不知耻的回答,是反驳他好呢,还是反驳他好呢?“张哥,你说的很对,阅读性非常好的代码可以不加注释,代码本身的阅读性非常好,这个前提是,函数名字起得非常好,一看就知道这个函数的作用,变量名称起得简洁易懂,一看就能推断出它的用途,而且,源文件本身阅读性也非常好,相关的这一类代码放在一个源文件中,其它的放在别的源文件中。函数长度最好不要超过一个屏幕能显示的最大行数,尽量用子函数而不是多条语句充当函数主体。头文件不要互相包含来包含去,能用宏的地方最好用宏,能用枚举的地方最好不用那么多数字,可是你的代码,可读性实在是太差了嘛!”

 

我鼓起腮帮子,说得唾沫横飞,从软件工程说到实战技巧,从源代码编码规则说到历史上由于软件故障引起的各种惨痛教训。可是,我很快就意识到,我这简直就是“对牛弹琴”啊!

 

张哥一边拨弄着自己的指甲,以此来表示对我借机宣扬自己软件素养的不以为然,一边不时地冷笑几声,等我说完后,他把胳膊肘放在我的电脑桌上,托起他那颗肥胖的脑袋,颇有仪式感地摇了几下,最后,他直勾勾地盯着我的眼睛,说,“你觉得公司领导能理解你说的这些话吗?”说完这句话,他把两只手从脑袋上拿开,搓了几下,拍了拍我的膝盖。

 

“我们都是技术人员,都有着对优秀代码的自觉追求,其实,我也很讨厌注释,我的代码里也基本上不加注释,但是,我的代码的阅读性真的非常好,代码本身就是注释!”看着他并没有什么实际的表示,我继续对他口诛笔伐。

 

“对,你说的很对,”张哥笑吟吟地对我说。“干净的代码赏心悦目,而且不会耗费程序员无关的精力。代码改来改去,如果注释不跟着一起改,注释和代码的设计一致性很快就会丧失了,所以,与其把时间放在写注释上,不如用在代码的重构上。”

 

张哥的心里像明镜似的,和他那晦涩难懂、混乱不堪的代码形成了极大的反差。

 

我怔怔地看着他,张哥的两鬓已经泛白,无神的眼睛里有着几许血丝,一时间不知道该说什么好。闷热的空气好似凝滞了,我看着他,他看着我。

 

“张哥,”我打破了这种难堪的沉默,“你辞职后还干技术吗?”

 

“不干了,我一个亲戚,做建材的,正好缺人手,我跟着他干一阵儿。干技术实在太累了。”张哥突然像打了败仗的逃兵,泄气地说道。

 

“哎,”看着眼前这位共事了好几年的同事,我一时间五味杂陈,说不出话来。“我给你改改代码怎么样?咱俩用一天或者两天的时间好好捋一捋,改一改,不用改的多好,能交差就行。”我突然想到一个折中的办法,并为自己能够想到这么妙的方法感动不已。

 

“可以,”张哥爽快地答道。“我家附近开了一家火锅店,有时间请你吃一顿。”

 

‘跟我打哈哈,哼,你还嫩了点。’我不禁暗自思忖道。“有时间请吃饭就是不打算请的意思呗!”

 

“我随时有时间,今天下了班怎么样?”我不失时机地抓住机会说道。

 

张哥是个老实人,实在人,愣愣地看了我一眼,无奈的说,“好吧,晚上我请你。”

 

与非网原创内容,未经允许,不得转载!


 

 
关注与非网微信 ( ee-focus )
限量版产业观察、行业动态、技术大餐每日推荐
享受快时代的精品慢阅读
 

 

继续阅读
工程师文化里除了埋头苦干,也要“高举”领导政策方针

对于每一个不善交际同时又有技术情结的工程师而言,最理想的工作环境就是没有任何杂事的干扰,自己能够在一个独立的空间里,专心致志地钻研技术。同时,不用费心去搞办公室政治,也不用对领导溜须拍马,只是单纯地干着自己喜欢的画板子、写代码的工作,就能得到体面而又公正的收入。

工程师故事 | 有种项目组长叫苦头你来吃,成果他来享

之前,孤傲的我内心里其实是不大认可这句话的,男子汉大丈夫,顶天立地,端身持正,光明磊落,为何要违心去取悦他人呢?但是,笔者在公司经历多年浮沉,尤其是在和同事李工近四年的近距离打交道之中,终于认识到,在这个被三千年的腐儒文化泡透了的国度,拍领导的马屁远比埋头苦干更加实用得多。

工程师版“有钱没钱回家过年”

过了腊八,喝一碗腊八粥,泡上一罐腊八蒜,年味就越来越浓了。小学生们早早地放了假,不用再顶着寒风,抵抗着睡眼惺忪,学那做一天和尚撞一天钟。每天早上送孩子上学的家长们终于松了一口气,再也不用早起做饭、送娃,忙得个脚不沾地、马不停蹄。平日里被塞得满满登登的马路也终于舒缓了心气,挂起来过年的红灯笼,放下平日里被搞得焦头烂额的满腔怒气,扮起那温馨

裁员算个啥?拍拍身上的灰尘还会遇到更好的岗位

我的第一份工作是巡道工,只工作了四十多天,就随着温总理的改革新政下岗了。在以后的二十年里,我每隔一段时间就会被辞退或者离职。无论如何挣扎结果都一样,就是失业一段时间。每次失业后我都会准备开始一段新的工作,但是感觉一段比一段精彩。因为我可以花比较长时间思考怎样开始下一份工作,甚至换一份完全不同与以前的工作。于是在这二十年里,我从事过PC销售

Bug虐我千百遍,我待bug如初恋

语言做为人类交流的工具,会随着社会和时代的发展而被赋予新的内涵,正所谓“苟日新,日日新”是也。比如,“聪明绝顶”这个词儿,以前的意思大概是指太过于聪明,以至于“会当凌绝顶,一览众山小”,没有比他更聪明更拉风的了。但是现在,似乎更加合理的解释是“聪明人爱动脑筋,以至于脑瓜壳都秃了”,前段时间有个段子就是讲这个的,说是在北京中关村地铁站那里会

更多资讯
什么是华为的“大海思”和“小海思”芯片?
什么是华为的“大海思”和“小海思”芯片?

经过多年的持续的研发投入,华为海思自研的麒麟处理器现在确实是越来越强大,并且成为了华为手机的核心竞争力之一。

第一季度晶圆代工厂营收排名出炉,第一名果然是。。。
第一季度晶圆代工厂营收排名出炉,第一名果然是。。。

3月18日,TrendForce发布的最新研究报告指出,由于大多数终端市场(包括智能手机)的需求减弱,先进制程的发展趋势放缓。晶圆代工厂在今年第一季度面临严峻挑战,预计第一季度全球晶圆代工生产收入仅有146亿美元,同比下降约16%。

存储器“虐”三星千百遍,三星待存储器如初恋
存储器“虐”三星千百遍,三星待存储器如初恋

据韩国先驱报报道,存储器产业已经陷入低迷,价格不断走低,但三星电子预期今年下半年情况会有所好转,据传决定让位于韩国平泽市的存储器二厂,提前在明年3月投产,以维持市场领导地位。

索尼是日本集成电路的最后一点希望?
索尼是日本集成电路的最后一点希望?

说出以上这段话的是证券界的某位分析师。的确,索尼的图像处理芯片——CMOS图像传感器已经以绝对的优势位居世界首位,2018年占据全球51%的份额(51%是全球销售额占比,出自Techno Systems Research)。

受到SSD的排挤,HDD会不会消失?
受到SSD的排挤,HDD会不会消失?

在今年的MWC上,折叠屏手机成为5G技术之外的另一个亮点,包括三星、华为、柔宇等在内的手机厂商都推出了自己的解决方案,并成功地引发了社交网络上的热议。人们对折叠屏手机的热衷其来有自,毕竟作为人类7*24小时随时相伴的“必需品”,消费者总是希望它能变得更便捷一些。

电路方案