yashiganiの英傑になるまで死ねない日記

週末はマスターバイクでハイラルを走り回ります

筋の悪いコードレビュー

たまにコードレビューのしかたを紹介するエントリーを目にすることがある。その中でも反響があるものは実際によくまとまっており、なるほどと感心することもよくある。しかし、中にはコーディングスタイルやイディオム、ちょっとしたテクニックを使うように目を光らせるように助言されているものがある。誤解を恐れずに書くと、それらのトピックは無視できるようなものばかりであり、そのような指摘ばかりつけるのはあまり褒められたものではないなと感じる。これは私自身にも言えることだが、瑣末ことを指摘しすぎてしまうあまり、本質的な議論が霞んでしまうことがままある。レビュイーにとって、指摘が学びになることは確かに存在するのだが、コードレビューの目的はあるべき実装を議論するものであり、老婆心からそれを繰り返すことは必ずしも良いレビューとは言えない。

では、本当に良いコードレビューとはなにか。それは、コーディングスタイルのような事項の指摘ではなく、アプリケーションにとってその実装が好ましいかどうかを議論するものだろう。実際、私がもらった良いレビューを思い返すと、そういうものばかりが思い出される。つまり、良いコードレビューはプロダクトのドメインに深く根ざしているため、おいそれと具体的なケースを公開できることはないはずなのである。