- PR -

インスタンスフィールドの命名規約

投票結果総投票数:113
何もつけない(ローカル変数と同じ) 71 62.83%
先頭または末尾にアンダースコアをつける 24 21.24%
先頭にfやmをつける 15 13.27%
ハンガリ 3 2.65%
  • 投票は恣意的に行われます。統計的な調査と異なり、投票データの正確性や標本の代表性は保証されません。
  • 投票結果の正当性や公平性について、@ITは一切保証も関与もいたしません。
投稿者投稿内容
Wata
ぬし
会議室デビュー日: 2003/05/17
投稿数: 279
投稿日時: 2003-08-21 18:15
こんにちは。Wataです。
ちょっと気になることがあるのですが、皆さんはインスタンスフィールドの名前をどのようにつけていますか?
自分は「何もつけない」が好きですがプロジェクトはハンガリアン記法を指定されています。
Wata
ぬし
会議室デビュー日: 2003/05/17
投稿数: 279
投稿日時: 2003-08-21 18:33
文字が化けてしまっていますが、4つめの"ハンガリ・/font>"は"ハンガリアン記法"と書いたつもりでした。
あと、"その他"を付け忘れました...。
かずくん
ぬし
会議室デビュー日: 2003/01/08
投稿数: 759
お住まい・勤務地: 太陽系第三惑星
投稿日時: 2003-08-21 21:39
インスタンスのスコープレベルで区別できるよう、インスタンスフィールドに対しては先頭にmを、クラス変数に対しては先頭にsを、ローカル変数に対しては先頭にaを、読取専用の引数に対しては先頭にinを、書きこみ専用に引数には先頭にoutを付け、以降はJavaのコーディング標準にしたがって命名するようにしています。
unibon
ぬし
会議室デビュー日: 2002/08/22
投稿数: 1532
お住まい・勤務地: 美人谷        良回答(20pt)
投稿日時: 2003-08-22 10:18
「何もつけない」です。
将来は Eclipse などの IDE が、変数の種類を自動判別してくれて、
画面やプリンタ上で色分け表示してくれるだろうと、
他人任せな期待をしています。

#以下追加。
他人任せな割には、要望だけは多いのですが、
できれば色分けは IDE 間で共通してほしいですね。
たとえば、現在のオブジェクトブラウザ(Eclipse のアウトラインとか)の
アイコンの色や記号は、
public/protected/private/static/final などの区別が
IDE によってマチマチなので覚えられません。

[ メッセージ編集済み 編集者: unibon 編集日時 2003-08-22 10:24 ]
Wata
ぬし
会議室デビュー日: 2003/05/17
投稿数: 279
投稿日時: 2003-08-22 18:42
こんにちは。Wataです。

引用:
かずくんさんの書き込み (2003-08-21 21:39) より:
インスタンスのスコープレベルで区別できるよう、インスタンスフィールドに対しては先頭にmを、クラス変数に対しては先頭にsを、ローカル変数に対しては先頭にaを、読取専用の引数に対しては先頭にinを、書きこみ専用に引数には先頭にoutを付け、以降はJavaのコーディング標準にしたがって命名するようにしています。


どうも、レスありがとうございます。このスレを作ったのは
「効率の良い描画方法とは?」スレのかずくんさんのソースを見たからだったりします。 

やはり、命名規約の接頭辞などはスコープレベルが主な目的で、それはそれなりのメリットがあると思います。
でも、本当の問題は、一目で把握できないほどの多くのローカル変数や長大なメソッドの方であるようにも思います。

そんなことも踏まえて、先に書いた通りめんどくささも手伝って自分はとくに何もつけてません。
どあちゃくらふ
会議室デビュー日: 2003/08/25
投稿数: 1
投稿日時: 2003-08-25 11:19
「何もつけない」です。インスタンスのスコープレベルで区別できるよう、インスタンスフィールドに対してはthis、クラス変数に対してはクラス名で修飾し、ローカル変数に対してはそのままアクセスするようにしてます。
ニシトミ
ベテラン
会議室デビュー日: 2003/04/24
投稿数: 76
お住まい・勤務地: 千葉・東京
投稿日時: 2003-08-26 11:05
私も、何もつけないに1票ですが、

現在のプロジェクト内では
命名規約が特に無いので、自分が作成したクラスに
他者が後でフィールドを追加すると、アンダーバーがついて
たりして、
ソースもごちゃごちゃするし
あーやられたみたいなことが良くあります。

投票にもあるように、結構まちまちですねぇ

せめて他人のソースをいじる時はそのクラスと統一を持たせてよ
なんて思いますが、

この場を借りて文句言ってみました、すみません
ocean
ベテラン
会議室デビュー日: 2003/07/06
投稿数: 65
投稿日時: 2003-08-26 15:30
今はアンダースコアを先頭につけてます。でもダサいので、本当はRubyみたいに先頭に@をつけたいです。(できるようにならないかな?)

スキルアップ/キャリアアップ(JOB@IT)