はじめに
はてなブックマークを見ていて「お、なんか気になる本!」と思った「Looks Good To Me」を買って読んでみました。
ちなみに届いた本を手に取ったときの感想は「意外と分厚いな」でした。
でも、すごく読みやすくて、サクサクとページをめくっていくことができました!
どんな本?対象読者は?
「Looks Good To Me」はコードレビューに関するプロセスや文化、仕組み作りなどを詳しく解説した本です。
僕が考えるに、本書はこういう人が読むといいんじゃないかなーと思いました。
- 開発チーム内にコードレビューの文化がなく、これから導入したいと思っている人
- コードレビューは形式的にはやっているものの、いまいちしっくり来てなかったり、いろいろストレスを抱えたりしていて、もっと改善したい人
僕の感想
本書の冒頭で「『Looks Good To Me』は、コードレビューの教科書となることを目指して執筆されました」と書いてありますが、まさにその通りで、「コードレビューをこれから始めたい」もしくは「コードレビューをもっと良くしていきたい」と考えている人にとっては、あれも、これも、それも、コードレビューに関するイロハがふんだんに詰め込まれています。
僕も本書を読みながら、「うんうん、せやな、そーやな」と首を何度も縦に振りながら読みました。
プルリクは小さく!小さく!小さく!(大事なことなので3回)
中でも僕が一番首を大きく縦に振ったのは、58ページの以下の部分です。
扱いやすいPRとは……
信頼できるガイドラインの1つは、合計500行を超えるコードを提出しないことです。(略)
もう1つの信頼できるガイドラインは、PRで変更されたファイルの合計数を20未満に抑えることです。
これは僕もほぼ同じことを考えていて、プルリクのdiffは300行以下に、変更されたファイルは30ファイル以下に抑えるのが良いと思っています。
以前僕が執筆した以下の記事にもその話を書いています。
絶対的な基準があるわけではありませんが、筆者は経験的に以下の範囲に収まっていれば許容範囲かなと考えています。
調査をサクサク進めるために。伊藤淳一が考える「良いプルリクエスト、悪いプルリクエスト」 | レバテックラボ(レバテックLAB)
- File changedは30ファイル以下
- 追加された行数は300行以下
微妙に数字は違うものの、感覚的にはだいたい同意見と考えて差し支えないでしょう。
そう、プルリクは小さくしないといけません!
diffの行数は多くても300〜500行程度、変更されたファイルは20〜30件程度に抑えましょう!!
頼むから1000行を超えるようなプルリクはやめてね 🥺
コードレビューするときの技術的な観点は少なめだった
一方、僕が本書に期待していたのはもう少しテクニカルな内容でした。
レビュアーがプルリクのコードと対峙する際の脳内分析とでも言うんでしょうか?
言葉で説明するのが少し難しいですが、
- コードレビューするときはコードのどういうポイントに着目するべきか
- コードレビューするときはどういう順番でコードを読み進めていけばいいか
- コードに関する典型的な指摘事項にはどんなものがあるのか
といった内容を具体的なコード例とともに説明してくれたら嬉しかったなーと思いました。
もちろん、本書ではそうした内容にも触れられてはいるのですが、割合としてはわずかです。
冒頭にも書いたとおり、本書はコードレビューのプロセスや仕組み作り(ツールを使った自動化等)にフォーカスを当てている印象です。
僕が働いている株式会社ソニックガーデンでは、本書で書かれているような取り組みはだいたいすでにやっていて、僕自身、コードレビューのプロセスについては大きな不満は持っていません。
ですので、本書を読んでいて「うん、そのとおり」とか「やっぱりそうだよね」と思うことはあっても、「それは知らなかった!」と思うような目新しい内容はあまりありませんでした。
とはいえ、それはあくまで僕の場合です。
みなさんは「うちのコードレビュー、なんかうまく回ってない気がするんだよなあ……」と思っているかもしれません。
そういう人にとっては、本書を読むことで改善のヒントが見つかるんじゃないかなと思います!
「伝わるコードレビュー」と被る内容もあった
コードレビューといえば、先日「伝わるコードレビュー」という本も発売されました。
この本については以下のエントリで書評を書いています。
「伝わるコードレビュー」はテキストコミュニケーションにフォーカスを当てた本です。
PRのdescriptionや、レビューコメントのやりとりについて、どう書けばわかりやすくなるのか、どういう言葉遣いをすればお互い気持ちよくコミュニケーションできるのか、といったポイントを解説しています。
「Looks Good To Me」でも「Chapter 6 効果的なコードレビューコメントの作成」で同じようなテーマが語られています。
たとえば「あなた(You)」で始まるレビューコメントは、攻撃的なトーンとして捉えられやすいそうです。へ〜、知らなかった!
「伝わるコードレビュー」を読んだときは、「こういう本が必要になるのって、日本人エンジニア特有なのかな〜」と思ったりしていたのですが、そんなことはなく、世界共通みたいですね。
テキストコミュニケーション、ムズカシイw
まとめ
というわけで、今回は書籍「Looks Good To Me」の感想を書いてみました。
何度も書いているとおり、「コードレビューの文化やプロセスをこれから導入したい」とか「うちのコードレビューはもっと上手にやれるはずだ」と思っている人にとっては、打ってつけの一冊だと思います。
より洗練されたコードレビューのプロセスや仕組み作りを目指している人は、ぜひ本書を手に取ってみてください!
あわせて読みたい
こちらは以前僕が執筆した、「良いプルリク、悪いプルリク」に関する記事です。
プルリクとコードレビューは切っても切れない関係だと思うので、こちらもあわせてどうぞ!
levtech.jp
レビューコメントのやりとりでギクシャクしがち、という人は「伝わるコードレビュー」もお勧めです。
blog.jnito.com