Ishikawa Munetoshi

コードの可読性についてのプレゼンテーション紹介 vol. 5: “レビューとまとめ” 編

こんにちは。コミュニケーションアプリ “LINE” の Android クライアントチームの石川です。

この記事は、 “コードの可読性についてのプレゼンテーション紹介” の不定期連載記事の第五回です。前回の記事はこちら です。

今回はいよいよ最終回です。第八章の “レビュー” についての解説と、本連載のまとめをします。

コードの可読性についてのプレゼンテーション紹介 vol. 4: “依存関係” 編

こんにちは。コミュニケーションアプリ “LINE” の Android クライアントチームの石川です。

この記事は、 “コードの可読性についてのプレゼンテーション紹介” の不定期連載記事の第四回です。前回の記事はこちらです。

今回は、型と型の “依存関係” の話として、第六章と第七章の解説をします。

コードの可読性についてのプレゼンテーション紹介 vol. 3: “状態と手続き” 編

こんにちは。コミュニケーションアプリ “LINE” の Android クライアントチームの石川です。

この記事は、 “コードの可読性についてのプレゼンテーション紹介” の不定期連載記事の第三回です。
前回の記事はこちらです。

今回は、一つの型に閉じた話として、第四章 “状態” と第五章 “手続き” の解説をします。

コードの可読性についてのプレゼンテーション紹介 vol. 2: “命名とコメント” 編

こんにちは。コミュニケーションアプリ “LINE” の Android クライアントチームの石川です。

この記事は、 “コードの可読性についてのプレゼンテーション紹介” の不定期連載記事の第二回です。前回の記事は こちら です。

今回は、プログラム中に書く自然言語として、第二章 “命名” と第三章 “コメント” の解説をします。

コードの可読性についてのプレゼンテーション紹介 vol. 1: “導入と原則” 編

こんにちは。LINE メッセンジャーの Android クライアントチームの石川です。
先日、コードの可読性についてのプレゼンテーション (https://speakerdeck.com/munetoshi/code-readability) を公開しました。

今後、このプレゼンテーションについてのちょっとした解説を、本ブログ上で不定期に連載していきます。
今回は、このプレゼンテーションの概要と、最初の章 “導入と原則” についての解説を行います。

git で reviewer を探すスクリプトを作りました

こんにちは、LINE の Android Client を開発している munetoshi です。

この記事は LINE Advent Calendar2016 の 2 日目の記事です。

レビュアーを探すスクリプトを作りました

皆さん、元気にコードレビューをしていますか?レビューはしっかり行いたいものですが、適したレビュアーを見つけるのって面倒ですよね。 特にチームの人数が多い場合、私みたいな引きこもり系エンジニアには、誰が何を担当しているのかを完全に把握するのは難しいです。その割に、私は広く浅くコードに触れることも多いので、”これって誰にレビューしてもらえばいいのかなー” と途方に暮れることもあります。弊社ではコード管理に git/GitHub を使っているので、git history や blame を見ればいいのでしょうけれど、プルリクエストを作るたびにその作業をするのは骨が折れます。

そこで、 git history をたどってレビュアーに適した人を探し出すスクリプト”suggest_reviewer” を作ることにしました。

で、どうやってレビュアーを探すのさ

基本的には、git history を使ってレビュアー探すのですが、このとき以下の条件を満たすようにします。

  1. 変更されたファイルに詳しい人が、レビュアーとして選出される。
  2. 変更されたすべてのファイルで、レビュアーの誰かがレビューできる。
  3. 無駄にレビュアーを増やさない。