Map型の変数の命名について考えた
Map型の変数
ふと、Map型の変数の名前の命名って何がベストなんだろうと気になったのでパターンをまとめてみた。
ハンガリアン記法パターン
とりあえず変数名の末尾にMapをつけておくパターン。 例えば、社員コードと社員名の対応付けを格納するMapの場合はこんな感じだろうか。
var empCodeMap = new Map(); empCodeMap.set('123', '太郎'); empCodeMap.get('123');
型宣言が不要な言語の場合は命名の選択肢としてはアリかもしれない。 そうでないならあまり選択するメリットがないと思う。
KeyToValueパターン
キーと対応する値を変数名に含めるパターン。 シンプルで情報量が多いのが利点。私はいつもこの命名パターンを利用してMap型の変数を宣言する。
var empCodeToName = new Map(); empCodeToName.set('123', '太郎'); empCodeToName.get('123');
valueByKeyパターン
値を変数名の先頭に持ってきてキーを後に続けるパターン。 KeyToValueパターンと情報量は変わらないので好みの問題?
var nameByEmpCode = new Map(); nameByEmpCode.set('123', '太郎'); nameByEmpCode.get('123');
valueOfパターン
言語の構文によっては前置詞が自然に繋がるので良いのかもしれない。 例えばJavaScriptやJavaだと不自然な上に情報量が減るので悪い命名だと思う。
var empCodeOf = new Map(); empCodeOf.set('123', '太郎'); empCodeOf.get('123');