闲谈团队的代码质量

定义代码质量

首先当你开始意识到项目里代码质量差的时候,恭喜你已经有了代码审美。这是推进编程水平的重要的一步。很显然,如果你不知道什么是差的代码,你就写不出好的代码。写不出好的代码,更高的架构也就无从谈起。

先来定义团队代码质量的黄金标准:易维护。

代码最基本的要求,易读。现代的软件项目都不是一朝一夕,有团队合作,有新需求,要修bug,代码不只是只给机器读的,是给人读的。一份清晰、易懂的代码就包括了:良好的代码风格,清晰的逻辑,合理的结构。也许做到90分和天赋有关,做到70分其实没难度,单纯看你花了多少努力在这件事。

很多人用中文写几百个字描述一件事都说不清,一个逻辑有两千行代码又怎么可能写的清楚呢。锻炼过程也和提高表达能力相似,只是之前是某种文字,现在是用代码。文学里有修辞手法,有总分总,代码里有语法糖,有MVC。

代码质量从何开始

如果重视代码质量,如何达成代码质量的基本共识呢?

解决这个问题的核心并不是一本万能手册。不存在一本黄金宝典,包含了各式各样的代码,任何时候都可以按图索骥得到一个检验标准。你能得到的是一个评判的方式,可以从哪些角度去认知代码,最后发现这样的代码在这个条件会引起一些问题,所以这代码不够好。

我认为的起点是这几本书:《编写可读代码的艺术》《代码整洁之道》《重构》《代码大全》。就如前面说过的,这些书的重点并不是具体某个代码、某种条件下好的代码长什么样,而是他们怎么得出了这样的结果。当你理解了这几本书的核心思想后可以开始正确审视自己的代码质量了,可以开始code review了。

追求代码质量是一个成长的过程

代码质量就像作者写出好的文章一样,是一个不断进步、不断推进的过程。

一开始你可能写十几行就要停下来思考,这个命名合不合适,这样的逻辑是不是有点乱。后面可能到一个类的封装是不是合适。再后面可能几个月回头看自己的代码才意识到,当时这样写会有歧义,扩展性不好等等。

这也是自己不断提高编程能力的过程,写出易维护的代码只是第一步。

top Created with Sketch.