yn2011's blog

技術メモ

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パターン

言語の構文によっては前置詞が自然に繋がるので良いのかもしれない。 例えばJavaScriptJavaだと不自然な上に情報量が減るので悪い命名だと思う。

var empCodeOf = new Map();
empCodeOf.set('123', '太郎');
empCodeOf.get('123');

参考