代码被同事吐槽难维护,那种感觉确实不好受。你加班加点写出来的东西,别人看不懂,改不动。这不能怪同事,换你自己看半年前的代码,也未必能一眼看明白。团队协作里,代码就是大家的共同语言。语言有标准,代码也该有。
谷歌Python代码规范就是一套可以用的标准。它不玄乎,都是些写代码的基本规矩。比如命名,变量名用小写加下划线,类名用大驼峰。这个规矩看着简单,真用起来,效果立竿见影。你看到 user_name 就知道是用户名,看到 DataProcessor 就知道是个处理类。不用再去猜,不用再去翻上下文。猜代码是最浪费时间的事,猜错了还要出bug。
再比如注释。很多人不爱写注释,觉得浪费时间。其实写注释是为了救自己。你自己写的代码,三个月后回来改,你也是看注释的那个陌生人。谷歌规范要求注释说清楚“为什么这么做”,而不是“做了什么”。做了什么都写在代码里了,注释要讲背后的原因。比如你用了枚举而不是字符串,就要注释说明这是为了可读性还是为了防误拼。这个细节,下次改代码的人一定会感激你。
函数和类的长度也要控制。一个函数超过50行,基本就该拆了。一个函数做一件事,做到极致。遇到循环嵌套,如果超过两层,就该考虑拆成小函数。小函数好测好改,出了bug定位也快。大函数像一个乱房间,进去找东西要翻遍所有角落。小函数像抽屉,每个抽屉贴了标签,一拉就找到。
团队里有人不按规范写怎么办。这事得靠工具来盯,不能靠人盯。用pylint或者flake8这种代码检查工具,合代码前自动跑一遍。不合规范就不让合。工具不说谎不抱怨,大家心里都服气。时间久了,规范就成了肌肉记忆,不用人提醒也能写好。
改代码风格需要一点耐心。团队可以先从最严重的毛病开始改,比如命名混乱和超长函数。改个把月,大家就能感觉到变化。你再也不用在代码里找“那个变量叫什么”,不用在长函数里看“这个参数传进来干嘛的”。代码变成一条干净的路,每个人都能沿着它走到目的地。
被别人说代码难维护的时候别急。按照谷歌规范改一改,你和同事的合作就会顺很多。你写书,别人能读。你说话,别人能懂。这不就是团队协作该有的样子吗。