如何选择功能名称?

时间:2015-12-04 16:39:35

标签: javascript function naming-conventions naming

我们正在讨论工作,因为我倾向于根据他们的工作来命名功能。

例如:

function notifyUserOfSomeThingThatHappened(){
    // notification code
}

我的同事相信(我有点同意)这个功能应该根据它被调用的原因来命名,而不是它的功能,因为它的功能可能会发生变化。

这样的事情:

function someThingHappened(){
    // notification code
    // possible new code in the future
}

我同意这一点,但有一个问题:我认为我们应该命名的函数只能通过它们的实际内容做一件事,但是其他函数的原因是被调用,如下所示:

function someThingHappened(){
    notifyUserThatSomeThingHappened();
    // possible new code in the future
}

function notifyUserThatSomeThingHappened(){
    // original code
}

命名功能的最佳做法是什么?为什么要使用这些做法?一个优于另一个有什么优势?

1 个答案:

答案 0 :(得分:7)

一个简单的规则是:
如果函数更改程序的状态,则函数名称应为动词;如果用于返回某个值,则为名词。

要记住的另一件事是一致性

如果您使用名称getName保持一致,请不要在其他地方retrieveName写信,因为这可能会让您的同事感到困惑。

另请注意,不同的语言确实具有不同的名称约定,因此您应始终检查以您正在使用的语言命名functionsvariables的最佳方式。