有时候,我们的开发者要完成某个功能的编码实现,或许灵光一闪,犹如行云流水,一气呵成,看着长长的整洁的代码总是忍不住津津乐道,就是懒得给这代码添上几行注释。过几天,或者过了一段时间之后,代码需要改动,还得花时间重新理解这段代码,改动需要10分钟足矣,但是阅读这段代码可能需要花上半个小时或者半天的时间,如果这代码是由别的程序员来阅读,花的时间必定会更长。不写注释,不利于日后工作的进展,也不利于日后工作的交接。
百度、google了一下都没有详细说程序注释的意义相关的文章,只搜到一些不写注释带来的影响,诸如此类:
给代码写上工整的注释是一个优秀程序员的良好习惯。工整简洁的代码未必就有较高的可读性,在一些业务比较繁琐,参数比较多的函数中,阅读代码的人会在各种参数的用法中纠缠不清,但是如果在参数或者业务操作的代码旁加上工整的注释,可以让既有的代码脉络清晰,更加有血有肉。如下图所示:
注释是程序员之间交流的通道。我们在欣赏古诗词的时候,难免也会遇上一些抽象难懂的字、词、句,然而,书本一般都带有注释,这是为了让读者更好地去想象创作时的场景,更好地去理解创作者的思想感情,然后设身处地陶醉一番。读者自然不吝赞美之词。我一直认为,代码如诗,写代码就好比吟诗作对。但是单纯的代码并不能完全使得程序的思想被其他人所理解,更有甚者,还会被咒骂。代码中的某些参数,就像上文提及的“字”;代码中的某些行,就像上文提及的“词”;代码中的某些函数或者某些代码块,就像上文提及的“句”。有了注释辅助,读者可以自行理解代码的实现思想,就不必手足无措地找人询问,大大节省时间成本,也可更专注在工作上。
上图的注释清晰反映了函数与代码上下文的关系,这么贴心的注释,使得读者在茫茫代码之中不必为了查找某个参数或者某个方法而上上下下地翻动滚动条,不至于让读者在翻查代码的过程中丢了工作的热情。
注释是程序员个性的反映。大家都有各自的编码习惯和注释风格,喜欢在注释里面署名的程序员,个性比较张扬,无论是对生活还是对工作都是乐观积极,团队中的活跃分子;喜欢用符号框住注释的程序员,拥有谦虚得体的个性,工作生活中不骄不躁,传递着正能量;喜欢把注释围成图案的程序员,内心想法丰富多彩,无论是工作还是生活都不缺乏艺术范。可见,注释也是程序员得以展现自我的舞台。
注释有利于节约公司的资源。程序员的工作很多时候会交接给新的职员来进行,新职员往往会耗上一段较长的时间去阅读代码,这个过程难免会经常询问同事有关问题,间接或直接影响到同事工作状态。注释可以大大降低问题的发问率,并且引导新职员去理解代码,同时节省了时间,而时间就是金钱。
看过软件工程相关教材的都有所了解,几乎每一本教材都告诉我们写代码要加注释,并且要学会高质量的注释,因为代码不仅仅是用来执行的,它还是用来给别人看的。好的代码加上高质量的注释,使得程序尽显优雅,读的人赏心悦目,何乐为不为呢?