启动方法的名称是" Do"符合某种标准?

时间:2016-10-28 13:21:42

标签: c# standards

出于某种原因,我的团队中的几个成员习惯性地使用" Do"

开始方法名称

e.g。

public void DoReopenLeads()  
public void DoProcessBaloney()

现在,我正在学习工作"有点男人和天堂没有接受过正式的代码培训,所以我不知道这是否是行业认可的编码标准。

在我看来,它似乎有点愚蠢,因为所有的方法"做"某事或其他......

我们团队的编码标准并没有涵盖如何命名方法(除了说明该功能在相当清晰的英语中做了什么)

4 个答案:

答案 0 :(得分:2)

通常,对于表示操作方法的名称的方法,以动词开头。 “do”或“does”是辅助动词,很少增加意义。

不过,请看一下:C# Coding Conventions

答案 1 :(得分:1)

没有这样的标准。也许这是本地的"风格"。前缀"做"如果在" Do"之后有多个具有相同单词的方法/功能,则会很有用例如:PrepareProcessLoadProcessFinishProcess - 然后DoProcess将是正常的。

答案 2 :(得分:1)

虽然这个话题有点专注,但我想分享一些我发现的软指导。

DoFactorys C# Coding Standards and Naming Conventions仅声明:

  

使用名词或名词短语来命名一个类

Dennis Doomen维护的AvSol C# Guideline相当有用的指南指出:

  

使用动词Show或动词 - 对象对(如ShowDialog)命名方法。一个好名字应该提示成员的,如果可能的话,为什么

     

也不要在方法名称中包含And。这意味着该方法不止一件事,违反了单一责任原则......

最后,没有这样的官方指南存在于石头上。您的工作区和域文化应该推动创建自己的指南。

为了一个良好的开端,我建议你阅读Eric Evans撰写的Domain-Driven Design: Tackling Complexity in the Heart of Software。它包含一个名为Ubiquitous Language的部分,可以通过与您的域专家和同事密切协商,帮助您了解如何创建和发展您的共享语言。您的代码也可以遵循这种通用语言,因此您的代码库可以告诉"故事"或通过阅读使用案例。

关于UL的另一个很好的参考是由Andrew Whitaker编写的,他写道:

  

拥有无处不在的语言可以提高代码库的连贯性,并使每个人都在同一页面上。

答案 3 :(得分:0)

没有一种定义,每个方法都应以“Do”开头。

清洁代码的一个原则(我喜欢并推荐罗伯特C.马丁的书)的命名方法是你不应该查看函数以了解函数的作用。所以命名必须传达意义。

方法应该是口头短语,因为它们实际上与数据“做”某事。但是刚开始使用Do前缀的所有方法只会添加无用的信息。更多特定可以更轻松地实现“清洁代码”目标。