9章変数と読みやすさ

本章では、変数を適当に使うとプログラムが理解しにくくなるという話をしよう。

具体的には、以下の3つの問題に取り組むことになる。

  1. 変数が多いと変数を追跡するのが難しくなる。
  2. 変数のスコープが大きいとスコープを把握する時間が長くなる。
  3. 変数が頻繁に変更されると現在の値を把握するのが難しくなる。

これらの問題にどう対処するかを議論していこう。

9.1 変数を削除する

8章「巨大な式を分割する」では、「説明変数」や「要約変数」を使ってコードを読みやすくした。なぜ読みやすくなったのかというと、変数が巨大な式を分割して、説明文のようになったからである。

本節では、コードが読みやすくならない変数を削除する。こうした変数を削除すれば、コードは簡潔で理解しやすいものになる。

このような不要な変数が使われている例をこれから見ていこう。

役に立たない一時変数

以下のPythonコードにある変数nowを考えてみよう。

now = datetime.datetime.now()
root_message.last_view_time = now

このnowを使う意味はあるだろうか? 意味がない理由を以下に挙げよう。

  • 複雑な式を分割していない。
  • より明確になっていない。datetime.datetime.now()のままでも十分に明確だ。
  • 一度しか使っていないので、重複コードの削除になっていない。

nowがなくても楽に理解できる。

root_message.last_view_time ...

Get リーダブルコード ―より良いコードを書くためのシンプルで実践的なテクニック now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.