7

データ処理では、ルックアップ データ構造を作成して、ある識別子を別の識別子にマップすることが頻繁に必要になります。具体的な例として、国の 2 文字コードとフルネームの間の 1 対 1 のマッピングを保持する構造を考えてみましょう。その中で私たちは持っているでしょう

AD -> Andorra   
AE -> United Arab Emirates  
AF -> Afghanistan

このマップを保持する変数の適切な名前は? いくつかのアイデア (キャメルケースの名前を使用します):

countryNameByCode
nameByCodeLookup
nameCodeLookup
codeToName
4

8 に答える 8

8

私の投票はcodeToNameこの特定のケースに賛成であり、それは一般化すると思います。それは、すべての場合に私が自分で選んだ名前だと言っているわけではありません。これは、スコープ、さらなるカプセル化などに大きく依存します。しかし、コードを読みやすくするのに役立つはずの良い名前のように感じます。

String country = codeToName["SV"];

かなり見栄えがよく、誰にでも簡単に理解できるはずです。「コード」という単語をより正確なものに変更する可能性があります (「国コード」が次の選択肢になります)。

于 2008-10-20T06:01:39.077 に答える
5
country_name = countries_by_code[country_code]

「電話ディクテ​​ーション」テストに合格し、自然言語のように聞こえます。

于 2008-10-20T06:55:47.093 に答える
3

コレクションには複数形を使うのが好きです。

countryNames

編集:countryCodesコードから名前にマッピングしているため、間違っています。

于 2008-10-20T06:12:39.380 に答える
0

私は通常、このようにします:

countryCodeMappingByName

または、マッピングが一意の場合は、単純に次のようにします。

国コードマッピング

于 2008-10-20T05:59:32.730 に答える
0

それを発音するときに正しく聞こえるものを使用してください。これは、キー変数に適切な名前を付けることも意味します。例:

countryName = countries[countryCode];

これは完全に理にかなっています。 countriesaを指定するcountryCodeと、 a が返されますcountryName。これは冗長になります。

countryName = countryCodesToNames[countryCode];
于 2008-10-20T06:17:08.420 に答える
0

C# では、これを行う型を呼び出しますCountryCodeToNameMapping。通常、私は変数を呼び出しますcountryCodeToNameMappingが、特定の非常に制限されたコンテキスト (ラムダなどc) では、おそらくそれをorと呼びますm

于 2008-10-20T06:38:36.257 に答える
-1

あなたがマッピングしているものを複数形にするための別の投票。

例えば。country = countries[code]

于 2008-10-25T07:41:56.847 に答える