Powershell:布尔函数的命名约定

Powershell: naming convention for bool functions

我无法在 PowerShell(动词-名词)中找到反映编程的任何合适的命名约定:

IsApple() {
    return Fruit.Type == Fruits.Apple
}

PS有这样的约定吗?

我没有找到任何以 'is' 或 'has' 作为动词的 cmdlet。我看到人们使用的是例如check-fruit ,但我很不满意这种函数名。它暗示如果我给它一个水果,它会告诉我它是什么类型的水果。

当然,这是一个足够简单的案例,可能不值得一个单独的函数,但有时您需要执行明显更复杂的检查,包括 RegEx、AD 查询等,只是为了回答 'Yes' 或 'No' 问题并在其上构建您的进一步脚本执行。

不将这些检查提取到单独的函数中似乎是不合理的,但是您将使用什么命名约定来告诉 reader(最好不要转到 [= 的主体33=] 函数)我正在检查的内容,就像我立即知道的,我在查看 IsApple()

时正在检查的内容

我问的原因是我没有看到 is-apple has-driver 等形式的任何 cmdlet

在 PowerShell 中,函数有经过批准的动词。它们因版本而异,但您可以使用 Get-Verb cmdlet 获取您的版本。

你的情况,我可以想到Assert-IsApple或者Test-IsApple

供参考,这里是 link to the official list of verbs for PowerShell