C# 如何命名词典?

C# 如何命名词典?,c#,.net,dictionary,coding-style,naming-conventions,C#,.net,Dictionary,Coding Style,Naming Conventions,在.NET中命名关联数组(例如,字典)是否有任何约定/准则 例如,有没有更好的方法来命名dict: var dict = new Dictionary<Foo, Bar>(); 我还看到BCL中的一些类型选择了听起来“更好”的名称,这些名称不会直接显示键和值应该代表什么,例如 对于多重贴图(例如,ILookup)如何 编辑: 也许我的榜样有点差劲;我并不是想把重点放在键和值的类型上 如果是: // key = Name of person, value = Age of perso

在.NET中命名关联数组(例如,
字典
)是否有任何约定/准则

例如,有没有更好的方法来命名
dict

var dict = new Dictionary<Foo, Bar>();
我还看到BCL中的一些类型选择了听起来“更好”的名称,这些名称不会直接显示键和值应该代表什么,例如

对于多重贴图(例如,
ILookup
)如何

编辑

也许我的榜样有点差劲;我并不是想把重点放在键和值的类型上

如果是:

// key = Name of person, value = Age of person
var dict = new Dictionary<string, int>();

我会尝试按照您链接的示例,您不会根据字典包含的内容来命名它,而是根据它的用途来命名它。很快就有人确定“dict”是一个将
Foo
键映射到
Bar
值的字典,但我想知道的是你为什么这么做。

我会选择
barsByFoo
,因为
Foo
在这里充当索引。一本
字典
就是
人名
。我有
和它们的
计数
。我刚刚把它命名为
keyCounts
。虽然不是一般的规则…同意-现代智能感知使得弄清楚它是什么变得很简单,但是弄清楚它为什么是…很重要的一点:“根据它的用途命名”。我选择了一个不好的例子,不必要地关注键和值的类型;我已经更新了这个问题。我的错,我同意<代码>字典索引说明了一切。
// key = Name of person, value = Age of person
var dict = new Dictionary<string, int>();
namesToAges
mapFromNameToAge
agesByName
agesForNames