code review 究竟如何是好?

1、容量。
贺师俊在这个回答里www.zhihu.com 提到一点:每个 PR 强制要求改动行数小于100行,新人要求小于60行,以保证 code review 的实际可操作性。因为 PR 太大,review 和 reject 的成本都比较高,就容易倾向于放水。

2、时机。
不能赶在上线前提 PR,否则提出的问题改还是不改呢?改了要不要重新测呢?reviewer 一看要上线,也更容易倾向于“通情达理”直接 approve。所以至少应该在提测前提一次 PR。

3、匿名?
并非所有人都能完全做到公私分明、就事论事。你要不要指出比你职级更高的人的问题?某个问题改良的成本很高,不改的话尽管不好但也能用,那还要不要提?

4、范围。
为控制时间成本,并非所有代码都需要 review,就前端而言,通常只需要 review js,那么具体 review js 的什么呢?你并不知道背后的业务逻辑,那到底 review 啥?一般来说需要关注:函数的设计、有没有重复的轮子、某处逻辑完全不知所云是否增强语义或补充注释等。

5、开放?
如果公司有一定规模的话,除了组内的人 review,要不要开放给组外的人?code review 并不只是找问题,也是技术交流、学习提高的一种方式。我个人感觉这个很大程度上取决于团队整体的技术氛围,国内应该没有几家能做到吧 🤔
展开
评论