December 2024
Beginner to intermediate
164 pages
1h 15m
Japanese
変数とその初期化はときに離れてしまうことがある。変数の名前は、処理においてそれがどんな役割を持つかというヒントを与えてくれる。そして、初期化は名前が持つメッセージを強化する。宣言(と取りうる型)と初期化が離れているコードだと、読みにくくなる。初期化にたどりつくころには、その変数が何のためのものかのコンテキストを忘れてしまうのだ。
どう整頓するか見ていこう。以下のようなコードを想像してほしい。
fn()
int a
...aを使わない何らかのコード
a = ...
int b
...さらに別のコード。aは使っているがbは使っていない
b = ...a...
...bを使っている何らかのコード
初期化を宣言のところに移動して、整頓しよう†1。
fn()
int a = ...
...aを使わない何らかのコード
...さらに別のコード。aは使っているがbは使っていない
int b = ...a...
...bを使っている何らかのコード
[†1] 訳注:整頓後のコードにもまだ整頓の余地があるが、あえて小さなステップとして宣言と初期化だけを変更している。
順番をいろいろ変えて試してみよう。変数をそれぞれ使う直前に宣言して初期化するのと、関数の先頭でまとめて宣言して初期化するのでは、どちらが読みやすくて理解しやすいだろうか? ここはあなたが推理小説家になるところだ。コードの読み手の体験を想像して、誰がそうしたのかを推測するのに必要な手がかりを残すのだ。
変数とそれを設定するコードを雑な順番に並べることはできない。変数間のデータの依存関係を考慮しなければいけないのだ。bを初期化するのにaが必要なら、まずはaを初期化しなければいけない。この整頓をする場合は、データの依存関係の順序を維持しなければいけないことを覚えておこう。 ...
Read now
Unlock full access