プログラミングの本質は「人間にとって理解しやすいコードを書くこと」にあります。『リーダブルコード』でも強調されているのは、名前を工夫するだけでコードの読みやすさが大きく変わるという点です。
この記事では、書籍『リーダブルコード』の第2章「名前に情報を詰め込む」から学んだポイントを整理し、具体例を交えながら解説します。
1. 名前で「役割」を明確にする
本書では「変数や関数の名前には、その役割をできるだけ正確に表す情報を込めるべき」と説明されています。
例えば次のような変数を考えてみましょう。
data = [...]
data では中身がユーザーリストなのか検索結果なのか分かりません。そこで、役割を明確にする名前をつけます。
users_list = [...] # ユーザー一覧
search_results = [...] # 検索結果
まるで地図に「図書館」「学校」と書かれているように、読み手は迷わず理解できます。
2. 名前で「単位や状態」を示す
数値や条件を表す場合、その単位や状態を名前に含めると誤解が防げます。
timeout_ms = 5000 # ミリ秒単位のタイムアウト
file_size_kb = 128 # KB単位のサイズ
is_logged_in = True # ログイン状態かどうか
もし単位を省略すると「この数値は秒だったかな?」と迷うことになり、バグの温床になります。『リーダブルコード』はこうした小さな工夫こそが可読性を高めると強調しています。
3. 名前で「意図」を伝える
良い名前は「何をするのか」だけでなく「なぜ存在するのか」という意図も示します。
# 悪い例
check()
# 良い例
validate_user_input()
後者は「ユーザー入力を検証する関数」だと一目で分かります。これは箱に「壊れ物注意」と書かれているのと同じで、内容を開けなくても正しい扱い方が伝わるのです。
まとめ
『リーダブルコード』から学べる重要な教訓は次の通りです。
- 名前は単なるラベルではなく、情報を伝える手段である。
- 役割・単位・状態・意図を名前に込めると、誤解が減りコードが読みやすくなる。
- 名前づけは未来の自分や他の開発者への「メッセージ」である。
⸻
参考情報
- Dustin Boswell, Trevor Foucher 著『リーダブルコード ― より良いコードを書くためのシンプルで実践的なテクニック』(オライリー・ジャパン)
- Google Python Style Guide: Naming