読者です 読者をやめる 読者になる 読者になる

どせいたんさき。

ナスダヨー

リーダブルコード―より良いコードを書くためのシンプルで実践的なテクニック


ちょっと前に読み終えました.これは手元に置いておいてふとしたときに何度か読み返したい本です.そしてそうでもしないとこの本に書かれたことを身につけることは難しいのではないかなと思いました.

はじめに

本書は「他人にとって読みやすいコードを書く」ためのテクニックについて記述したエッセイです.美しいコードを書くための精神と,それを実践するためのテクニックが記述されています.また,特定の言語に偏らないように様々なプログラミング言語でサンプルが記述されているのも本書の特徴だと思います.

自分はチームでコードを書くような環境にはいません.しかし,そのような環境においても「読みやすいコード」を書くことは大変重要です.なぜなら「他人」とはコードを書いてから数週間,あるいは数ヶ月たった後の自分自身も含むからです.自分はデータを処理・整形するために簡単なスクリプトを書くことが多いのですが,後になってどういう意図で作られたスクリプトなのか,正しい使い方は何だったかを失念してしまうことは少なくありません.本書を読んで,短いスクリプトであっても「読みやすさ」に気を配ることは決して無駄にはならないと気付かされました.

本書の構成

目次を読めばわかることですが本書は大きく 4 部に分かれています.

  1. 表面上の改善
    • 名前・コメント・見た目のようなコード全体に適用できる簡単なヒント
  2. ループとロジックの単純化
    • プログラムのループ・ロジック・変数などを改善して理解しやすくする方法
  3. コードの再構成
    • 巨大なコードブロックを再構成して問題を関数のレベルに分解する方法
  4. 選抜テーマ
    • 理解しやすさをテストや大きなデータ構造に適用する方法

自分には特に 2,3 章の内容が刺さりました.「読みにくいコード」とは単純に表記に問題があるだけではなく,構造そのものに問題を抱えている場合があります.コードに期待される動作をきちんと整理すること,問題を階層で分けて分類すること, 1 つの機能を関数としてパッケージ化すること,「読みやすいコード」とはこういった作業を忠実にこなしていった生産物なのだと学びました.

また,これらの作業はプログラミングだけではなく文章を書くときにも応用可能であると感じました.きしださんのこのエントリではいかにして読みやすい文章にするか,という問題を文章の構造を単純化するという問題に読み替えて解説しています.読みやすいコードを書くことも,読みやすい文章を書くことも同じくものごとの論理的な構造をしっかり把握することが大事なのだと思います.

これから自分にとっても読みやすいコードを書くために,まずは第 1 章の内容,変数名やコメントを分かりやすものにしていくことから実践していきたいと思います.