• ベストアンサー

この変数名はわかりにくいですか?

int data_i, buf_i, mem_i, i; int etc... と宣言したら、先生にdata_iのiってなんやねんって言われました。 自分は初心者で命名規則等はわからないのですが、このまとまりで宣言してるので、data_iのiの意味はとりあえずわかるとおもったんですが・・ iを先頭にもってきても、わかりにくいでしょうか・・ 配列のインデックスのいい命名の仕方があれば教えてほしいです。

質問者が選んだベストアンサー

  • ベストアンサー
  • ency
  • ベストアンサー率39% (93/238)
回答No.6

私の場合、data_index のように index のスペルは省略しないですね。 変数名で大事なのは、長くても後でメンテナンスするときにわかりやすい名前にすることが大事だと思います。 # それは、誰が見てもわかりやすいことに通じるわけですけどね。 課題で作るプログラムは、一度作ってしまえばその後見直すことはないかもしれません。 しかし、ソフトとして公開する場合デバッグ等のメンテナンスが必要になります。 # 個人でフリーソフトを公開する場合や、会社で複数人数でプロジェクトを作って # 商用ソフトを作る場合等がそれにあたります。 後になって「この変数って何だっけ?」といったことになったら、一度コードを見直さなくてはならなく、効率が悪くなります。 特に、仕事の場合、将来にわたってひとつのファイルを1人で担当することは皆無に近く、大抵途中で引継ぎが行われます。 場合によっては複数の人がひとつのファイルをいじることもあります。 その場合に「これは何だ?」ということにならないためにも、わかりやすい変数名をつける習慣はとても大事です。 理想としては、コメントなしでコードだけで何をやっているのかがわかるようなコーディングをすべきだと思います。 たとえば、データについても何のデータなのかがわかるような名前をつければ、もっとわかりやすくなりますよね。 そういう意味で、私は英文字一文字の変数 (i, j, x, y 等) を使用すべきではないと思っています。 たとえ数行の簡単な使い捨てプログラムであっても、変数名はその実態をあらわすべきです。 思いつくとか思いつかないとか、また一貫性云々というのは、また別の話です。

snailramer
質問者

お礼

回答ありがとうございます。 >変数名で大事なのは、長くても後でメンテナンスするとき >にわかりやすい名前 とにかくわかりやすい名前をつけることを優先するべきということですね。 自分は変数名のわかりやすさより、1処理1行を優先していたので、そのことよりも長くてもわかりやすい名前を付けることを優先したほうがいいみたいですね。 >理想としては、コメントなしでコードだけで何をやって >いるのかがわかるようなコーディング 提出する課題はコメントなしです。まさに先生が同じ考えをしているので。なので、コメントなしでもわかるようなコーディングを心がけてはいるんですが・・ 課題はTA5人と先生に添削され、ダメだしがかなり激しいので、コメントなしで誰が見てもわかりやすいコードを書く訓練をするには、いい環境かもしれません・・。 まずは変数名のダメ出しがなくなるように、書き換えてみます。

その他の回答 (11)

回答No.1

i、j、k、lなどは、昔からループ変数に使われたりしてたようです。 その名残で、試験でも、ループ変数はiなどとめちゃくちゃ分かり辛い事がされています。 インデックスという言葉をそのまま使うのはダメなのですか?data_idxなどと。 またはdata_numなど。 上記ですと、型がint型という解釈が出来ますね^^

snailramer
質問者

お礼

回答ありがとうございます。 >その名残で、試験でも、ループ変数はiなどとめちゃく >ちゃ分かり辛い事がされています。 ループ変数にも具体的な名前をつけるべきなんですね。 >上記ですと、型がint型という解釈が出来ますね^^ そういう解釈も出来るんですね。iという名前はそれだけでループ変数という意味になると思い込んでました・・ data_idxにして再提出します。

関連するQ&A