日常工作中,一个好的规范和习惯,往往会有个事半功倍的效果,在此方面我吃过很多亏。
比方说,工作中,我会用到很多工具,比如一套内六角工具,剥线钳,螺丝刀,电钻,使用这些东西,我在使用完之后没有放到该放的位置,然后当又需要用到这些东西的时候,花在找工具上的时间往往比真正做工作的时间要多,比如一套内六角工具,用完一个型号,随手一丢,然后用另一型号,结果再重新用那个型号的时候,要找半天才找的到,又比如,用一个型号的钻头,用完了换另一型号,随手一丢,想再用的时候又要找半天,如果有个好的习惯,用完了放回该放的地方,那不忙下次再用的时候,一下就找到了。
又比如说写程序的时候,没有写好注释,突然有什么事,原来的思路打断了,回头再来做的时候,忘了之前干啥了,要半天时间去想要干什么。或者是过了一段时间来看自己的代码,都看不懂了。
我在第一家单位工作的时候,有位李老师,我觉得李老师真是睿智,他要求我们写代码的时候每一行都要加上注释,当时觉得,真是苛刻啊,每一行都加上注释,而且以前写的代码,没加注释的,全部重新加上。当时觉得好无聊啊,每行都加上,得浪费多少时间啊。那个时候天天在那加注释,真是觉得浪费时间,现在想想这是相当有必要的。
在第二家单位工作的时候,老板林博士说,我们的代码是写给别人看的,逻辑固然重要,但是代码整体看起来要漂亮,要像写书法一样。人家看你打代码,先不管你代码运行质量如何,先看到你的代码写的整整齐齐,当时用的全英文系统,注释也要用英文写,林博士说,几个单词就好,允许有语法错误,但是变量的命名,函数的命名一定要想好,让人一下就知道这是啥意思,绝对不允许用啥n,m,啥的一个字母来命名,而且不允许使用常量,代码用出现1,2,3,4,这样的常量,看见一次训一次,这些常量,要用define定义,描述好常量的意思。注意代码间的段落,变量定义放在函数的头部,空一行,再写处理程序。不能吝啬空格和换行,变量的定义要用Tab来控制,每个变量要对齐。每个函数不宜太长,不能超过20行一个函数。不能把处理过程写到switch case中,每个case写一个处理函数。等等等。林博士教会了我很多写代码的规范和习惯,这些规范用了以后,写出来的代码真的很漂亮。
还有一点,在设计阶段要把眼光放的长远一点,这点很重要。比如界面处理程序,和底层的通信处理程序,一定要分开,中间要加一层来过度,为啥,为啥要大费周折的加一层适配层,因为你现在用的是串口通信,将来可能回改用USB通信,改成TCP通信,改成UDP通信,加了一层适配层,底层的通信随便改,界面处理不部分不要动了。这只是个简单的比方。
感谢林博士。
总结下来,工作中,一个规范,慢慢的变成了习惯,一个习惯,慢慢的变成了规范,事半功倍。
俩儿子