Свифт: глобальное соглашение об именовании констант?
В Swift кажется, что глобальные константы должны быть camelCase.
Например:
let maximumNumberOfLoginAttempts = 10
Правильно ли это?
Я использую все кепки, например, MAXIMUM_NUMBER_OF_LOGIN_ATTEMPTS
, от C, но я хочу согласиться на соглашения Swift.
Ответы
Ответ 1
В инструкциях Swift 3 API указано, что "имена типов и протоколов - это UpperCamelCase. Все остальное - lowerCamelCase".
https://swift.org/documentation/api-design-guidelines/
В идеале ваши глобальные константы будут расположены внутри какой-либо структуры, которая будет UpperCamelCase, и все свойства в этой структуре будут lowerCamelCase
struct LoginConstants {
static let maxAttempts = 10
}
И так получилось,
if attempts > LoginConstants.maxAttempts { ...}
Ответ 2
Я обсуждал использование верблюжьего корпуса с ведущим капиталом для констант уровня класса. Например:
static let MaximumNumberOfLoginAttempts = 10
Это еще верблюжьей кейс (как рекомендует Apple), но заглавный лидирующий символ дает понять, что значение неизменно.
Ответ 3
Apple выступает за CamelCase.
Тем не менее, многие используют _camelCase только для того, чтобы отличать его, особенно если у вас есть одно и то же имя в более низкой области.
Ответ 4
Я обычно вижу константы, объявленные с помощью k
, например:
static let kLoginAttemptsMax = value
Это также следует за верблюжьей оболочкой к "Т".
Ответ 5
Apple показывает нам константы с camelCase.
Я использую читаемый вариант. Итак, для вашего примера:
let maximumNumberOfLoginAttempts = 10
let MAXIMUM_NUMBER_OF_LOGIN_ATTEMPTS = 10
'MAXIMUM_NUMBER_OF_LOGIN_ATTEMPTS' ist читается для меня, и он сразу показывает, что он является постоянным var.