Swift 中关于 Bool var 和 func 命名约定的混淆

Confusion about Bool var and func naming convention in Swift

我正在开发 iOS/Swift 应用程序。看到 Google (https://google.github.io/swift/) 提供的 Bool 变量和函数命名约定后,我感到困惑。因为 Swift 本身跟在 Google 的建议中没有提到的简单副词,即

https://developer.apple.com/documentation/swift/array/2945493-contains

命名函数 returns Bool 的正确方法应该是什么?

Option 1. matches(string: String) -> Bool
Option 2. isMatched(string: String) -> Bool

我更喜欢自己将其命名为 matches,但我的团队成员希望将其命名为 isMatched

来自Swift API Design Guidelines

Uses of Boolean methods and properties should read as assertions about the receiver when the use is nonmutating, e.g. x.isEmpty, line1.intersects(line2).

所以他们都是正确的。基金会也同时使用两者:例如

12.isMultiple(of: 2)
[12].contains(2)

// and more e.g.
"accept".hasPrefix("a")

唯一重要的是正确阅读。