返回列表的方法中的复数/单数命名
Posted
技术标签:
【中文标题】返回列表的方法中的复数/单数命名【英文标题】:Plural/singular naming in methods returning lists 【发布时间】:2009-12-14 08:25:06 【问题描述】:这似乎是微不足道的一点,直到您意识到您需要一致性。不是以英语为母语的人,我更喜欢同时询问语法和风格。在这些方法名称中必须首选哪一个,返回一个 URI 列表,每个都与一个对象相关联?
objectUriList()
objectsUriList()
objectUrisList()
objectsUrisList()
另外,您是否认为将返回的对象明确表示为方法名称中的列表的好风格。也许像objectUris()
(或其正确形式)这样的东西在任何情况下都很好并且直观。
【问题讨论】:
为什么上面有对象?总体来说是多余的。 uriList()有理由吗? URI 对象 是的。我实际上有多个objects
我提供了一个例程。我在问题中使用object
这个词只是我真实案例的占位符。
【参考方案1】:
我也不是以英语为母语的人。正确的形式是 objectUriList 或 objectUris。无论对象和 uri 的数量如何。
停车场 = 停车场。 PC 存储 = PC 存储。 橡树林 等等
【讨论】:
【参考方案2】:objectUriList 应该是正确的答案。 (除非函数在多个对象上运行,然后 objectsUriList 会更好)。
我喜欢在函数名中指定返回的对象,但因为这是我一生的工作方式(自从更糟糕的编程语言以来)。现在,我认为没有必要。
【讨论】:
看看前三个答案是否一致!【参考方案3】:我会称之为 objectUriList(),它只是说起来更容易,而且基本上是正确的。很明显,它返回一个 List,它是一组 Uris,所以你真的不需要那里的复数。
不过,您对 objectUris() 的最终建议也不错,这取决于在您的 IDE 中查看它返回 List 的难易程度。
【讨论】:
好吧,不是真正的编程相关,但这意味着在英语中你只复数了一组链名中的最后一个。我总是忘记这条规则。 作为一个以英语为母语的人,我不知道规则是什么,只是听起来不错。 :) 是的,我也使用“按声音”,但有时我有疑问...特别是因为意大利语不同,我们将所有内容都复数。【参考方案4】:我肯定会选择objectUris()
替代方案,省略“列表”后缀。正如您所说,整洁且直观。
【讨论】:
请在直觉方面有所不同。 objectUris() 的返回类型可以是 string[] 或 List最好使用ObjectUriList
。
建议在某些圈子中不要在成员/参数名称中包含类型名称,因此您应该删除 List 部分,但我发现“ObjectUriList”比“ObjectUris”更明确和有意义,尤其是当你是附近可能还有“ObjectUri”作为名称。
【讨论】:
【参考方案6】:我想区分Array和List,Array后面加上's',List后面加上'list'比较好。
【讨论】:
【参考方案7】:我通常尝试使用单数命名空间,但有时也会使用复数命名空间。例如如果您的返回总是复数,例如某些关键字,我会使用复数,但如果它可以经常是单数,我会坚持单数命名约定。
【讨论】:
以上是关于返回列表的方法中的复数/单数命名的主要内容,如果未能解决你的问题,请参考以下文章