Какова цель использования статической константы в структуре Swift? - PullRequest
0 голосов
/ 24 сентября 2018

Следуя руководству по использованию функции цепочки для ключей, я заметил фрагмент кода, в котором мне нужно было реализовать структуру следующим образом:

// Keychain Configuration
struct KeychainConfiguration {
  static let serviceName = "TouchMeIn"
  static let accessGroup: String? = nil
}

Я знаю, что константа свойство типа значения не может быть изменено после создания экземпляра, поэтому мне было любопытно, с какой целью использовать статические в этом смысле?


PS
Этот вопрос не похожна этот вопрос , потому что принятый наивысший ответ (который я бы назвал лучшим ответом) не дает достаточно подробностей или каких-либо плюсов или минусов.

1 Ответ

0 голосов
/ 24 сентября 2018

Он имеет несколько приложений, включая, но не ограничиваясь, следующим:

1) Предоставить постоянное отдельное пространство имен, если константы имеют одинаковые имена.

struct A {
    static let width: Int = 100
}

struct B {
    static let width: Int = 100
}
print(A.width)
print(B.width)

2) Статические константы имеют «ленивый» дизайн, поэтому, если вы собираетесь использовать глобальную константу с ленивым поведением, может быть удобно поместить ее в структуру.

3) Чтобы показать коллегам, что константа применима к конкретному домену, где используется данная структура.

4) Организуйте свою конфигурацию по разделам: Theme.Layout.itemHeight или Label.Font.avenirNext

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...