我所在的团队每隔一段时间都进行一次Code Review(代码审查), 看看别人的代码, 提出自己的看法. 这对提高代码质量, 团队成员之间交流思想和方法都挺好的. 但是这个交流的过程也有一些需要注意的地方. 今天我想说的就是经常会有人问为什么不!
比如说我在介绍自己的代码的时候,讲到某个问题是用什么方法解决的. 就有人会问为什么不用那一种方法呢?对于这种问题你会怎么回答呢?
在我看来,这种问题从主观上看, 你是觉得我的代码写得不好,好像是在指责我挑我的刺. 可能我的代码真的写得不好, 但这种问法或多或少会让人觉得不舒服的. 严重的甚至会导致成员之间产生隔阂, 不利于今后的合作.
从客观上看,这个问题也很不好回答. 人与人的思想是不同的, 我可能想到了你说的那种解决方法. 比较了它们之间的优点和缺点,最终选择了我的做法. 但是也有可能我根本就没想到过你说的那种方法, 不知道它有什么优点和缺点, 我怎么知道为什么呢!对于前一种情况,我还可以说出我的真实想法, 大家讨论一下. 对于后一种情况,就真不知道怎么回答了.
然而,我们如果换一种问法, 不要问"为什么不?". 而是问一下, 你为什么要这样做, 根据什么来选择的这种方法. 先了解一下人家想法, 然后你再提出如果我们这样做会怎么样, 会不会好一点呢! 我想, 大家都会比较容易接受, 而且还可以带动大家一起来思考,探讨这个问题. 队友之间的交流就会更和谐,更顺畅了!
其实不光是程序员之间的交流需要注意, 这是人与人之间的交流都应该注意的.