我该如何命名java.util.Map?

Ale*_*x B 65 java naming-conventions map

我有一个java.util.Map从逻辑名称映射到要与该名称一起使用的一组参数.

Map<String,Parameters> howShouldINameThee = ...;
Run Code Online (Sandbox Code Playgroud)

这张地图最好的名字是什么?

我应该简单地打电话给这个parameters还是parametersMap

我是否在名称中包含有关键的信息,paramtersByName以便如何使用String键更明显?

z5h*_*z5h 86

地图将某些内容映射其他内容.
我喜欢使用像uidToPerson."以"是我能想到的最短的明确方式来表明我有一张地图.

编辑:
我将补充说我更喜欢以这种方式命名地图,因为"key"和"value"在名称中以该顺序出现.相反valueByKey.在映射操作中,关键是第一位的.你put(key, value)get(key)那个给出了一个价值.

当然这是个人喜好的问题.


dan*_*ben 26

我倾向于不想parametersByName对这些内容有什么混淆Map.你永远不知道什么时候你将不得不重新访问你很久没有看过的代码.

在Java中,我发现不必包含数据结构的名称(例如parametersByNameMap),因为键入是显式的.

  • 通常认为用数据类型污染名称是一种不好的做法。它是多余的,不能很好地进行重构,并且通过延长名称来损害可读性。 (6认同)

eig*_*gil 8

你实际上自己回答了这个问题.

这张地图最好的名字是什么?

您想将地图映射到名称,因此您说'地图名称'!!

在我看来,这应该是命名约定:valueForKey.

使用其他建议keyToValue和valueByKey,我觉得你需要在最后添加单词Map,如下所示:keyToValueMap,valueByKeyMap.当您使用对于它从它是一个映射的语言明显.