変数は中身が分かる名前で

変数は、見ただけで中身が分かる名前にすべきです。
よく、resultとかvalueとかdataとかreturnValueという変数名を見かけますが、これはあまり良くないネーミングです。

名前というのは、それ自体が読み手に対して重要な情報を伝える要素なのですが、どうもクラス名やメソッド名に比べて変数名は適当につけられがちな気がします。

 

ロジックが少々複雑でも、コメントが多少いい加減でも、変数名さえきっちりしていれば案外、処理の流れを見失わずにすむものです。

例えば、複雑なロジックの中で出てくる変数がvalueとかvalue2とかの場合と、userNameとかtelNumberのように中身を明確に示した名前の場合、どちらが読みやすいかは言うまでも無いと思います。

 

技術書やネットに載ってるサンプルコードの変数名もresult等が使われていますが、あれは言ってみれば、外国語の教科書の例文と同じです。
流用する際には、目的に合った変数名に書き換えながら使わなければいけません。

 

また、メソッドの最初にreturnValueという変数を宣言しておいて最後にそれを返却する、という書き方もよく見かけますが、これも良くないです。

「この変数が戻り値になる」という情報を変数名に持たせても、そんなことはreturn文を見れば一瞬で分かるのでメリットはありません。
それよりも、companyDataのような変数名にしてそれをreturnしていれば、「このメソッドは企業データを返すんだ」ということが一発で分かります。

 

APIの実行結果やDBの検索結果のように、不特定多数の情報が入っている場合は名前が付けにくいです。
が、その場合もただのresultではなくapiResultやdbResultのようにするだけで読みやすさは大幅にアップします。

もちろん、もっと具体的に中身を示す名前が付けられるのなら、それが一番です。

 

名前を考えるのは面倒ですが、今はネットで簡単に英単語が検索できます。
めんどくさがってvalueとかdataのような名前の変数を乱発しないよう、気をつけましょう。




コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です