2009-05-27 8 views
2

私はユーザー名ラベル、ユーザー名テキストボックス、ユーザー名ローカル変数、必須のフィールドバリデーター、ユーザー名プロパティーおよびメソッドパラメーターなどがあるUI以外の場所で、ハンガリー表記の使用を中止しました。多くの場合、すべて同じコンテキスト内にあります。現在UIのハンガリー表記を置き換える/避けるための命名アドバイスはありますか?

:私は明らかに、に、userLabel、UserTextBox、UserRequiredFieldValidatorを行う場合、私はちょうど短いプレフィックスのために長い接尾辞をsubstiutingてるようlblUser、txtUser、rfvUser、_User、ユーザー、ユーザー

は、それはそうです。

フィールドを示す_は、FxCopによってフラグが立てられますが、プレフィックスがないと、承認されたユーザー/ユーザーの規則と衝突します。

提案がありますか?

答えて

4

私はそれが私のコードをより読みやすくすることがわかったので、私はまだUIオブジェクトのハンガリー表記を使用します。

私はUIコントロールのm_firstNameTextBoxやm_countryComboBoxのようなものを使用し、それらのコントロールの文字列値はm_firstNameとm_countryを使用します。

1日の終わりには、好きなものを使用する必要があります。ハンガリー記法を避けるための毛布の規則は、それを宗教的に使用することを規定しているほど悪いものです。 intCounter、strNameなどは残念ですが、変数名にクラスのタイプを示すのに適していると思います。私の意見では、UIコントロールは理にかなっているケースの1つになります。

1

私は実際にUIの長い名前につながっていますが(私があなたが言及した問題のために)ハンガリー語を好む。私の唯一の提案はチーム全体で一貫していることです。

2

ハンガリー表記には、コードを読みやすくするために使用されている限り、何も問題ありません。それがそれに寄与しないと思うなら、それを使用しないでください。

ああ、「ユーザー」と「ユーザー」の両方を使用しないでください。 読み込み、使用、保守、移植が困難です。 2つの異なるものが2つの異なる意味を持つ場合、ハンガリー表記は、大文字/小文字の間で文字を反転させることによって、その情報を符号化するよりも良い選択肢です。

誰がプログラム言語で大文字と小文字を区別したかはわかりませんが、当時誰も想像できなかったほどのダメージを与えました。私はそれは「USBDrive」をしてきたはずです代わりに「同上」または「UsbDrive」の「ID」を入力したので、私はコンパイルエラーを取得嫌い。

+1

大文字と小文字の区別は、計算上少し安い(少なくともASCIIシステムでは)ため、デフォルトではあまり行われていないと思います。私は、より最近の言語やより高いレベルの言語が識別子に対して大文字小文字を区別しない可能性が高いという印象を持っています。 – cheduardo

+0

文字が正確に等しいかどうか比較するのがよろしいです。私はユニコードのソースコードについて始めることさえしないでください。それは読んでもらえませんし、ほとんどの文字を入力する方法もわかりません。 –

+0

これはまったく真実ではありません。テキストボックスをコンボボックスに変更したり、忘れたり、コントロールの名前を変更したくない人がいる可能性があります。 txtを作るのは間違いです。 – VoronoiPotato

1

すべて小文字とアンダースコアを使用すると、大文字と小文字の問題はなくなります。いくつかのイディオムはどこかに決定されました。

+0

私はかつて同意しましたが、variableNameとTypeNameの大文字と小文字を区別する3年のコーディングが私の心を変えました。 – CJBrew

関連する問題