我有一个java.util.Map
从逻辑名称映射到与该名称一起使用的参数集的映射。
Map<String,Parameters> howShouldINameThee = ...;
该地图的最佳名字是什么?
我应该去简单,只需要调用这个parameters
还是parametersMap
?
我是否在名称中包含有关密钥的信息,paramtersByName
以便如何String
更明显地使用密钥?
Answers:
地图将某些东西映射到其他东西。
我喜欢使用uidToPerson
。“到”是我可以想到的最短的明确方式,以表明我有一张地图。
编辑:
我要补充一点,我更喜欢用这种方式命名地图,因为“键”和“值”在名称中按该顺序出现。相对于valueByKey
。在映射操作中,密钥优先。您put(key, value)
或get(key)
那给了一个价值。
当然,这是个人喜好问题。
我倾向于parametersByName
不混淆内容的内容。Map
。您永远都不知道何时需要重新访问长时间未使用的代码。
在Java中,parametersByNameMap
由于键入是显式的,所以我发现不必包含数据结构的名称(如)。
在我的应用中,会有很多类型的参数。
例如,在GAE中,当我需要将http请求参数提取为可序列化形式时,我将映射命名为httpRequestParameters或httpReqParams。以sessionAttrs为例。
对于GWT RPC,客户端到服务器参数哈希,我将其命名为client2ServerParams或clnt2SrvrParms,并命名对应的server2clientParams或srvr2ClntParms。
在openid使用者中,我将地图命名为ConsumerAuthRequests或redirectFormParameters及其对应的providerResponses。
在重新格式化的输入Main参数的映射中,我将其称为inputArgs。
在我的情况下,httpRequestParametersBy名称,client2ServerParamsByName,consumerAuthAuthsByName,inputArgsByName或inputArgValueByKey等将是多余的,而且太长了,因为我总会知道映射的键始终是“名称”。我只是确保名称是复数形式,以便让我知道它是一个集合。
这种做法的例外情况是,当键不是名称而是对象时,我将地图命名为vehicleByDriver,projByMgr,toxicFoodListByAnimal。