При программировании на Java есть общее решение для более чистого кода, когда мы используем статические константы, как это:Использование глобальных констант в Swift
public class Game {
private static final int MAX_PLAYERS_NUMBER = 1000;
}
мне очень нравится этот подход, и я хотел бросить его как-то Swift. Так что я начал с статических констант:
class Game {
static let maxPlayersNumber = 1000
}
Он выглядит хорошо, но это странно в коде, когда я всегда должен использовать имя класса в не-статические методы:
func doSomething() {
print(Game.maxPlayersNumber)
}
Так что я подумал о двух подходы, один раз просто свойство в классе:
class Game {
let maxPlayersNumber = 1000
}
И второе является использование глобальной константы в файле:
let maxPlayersNumber = 1000
class Game {}
Тем не менее я не уверен, что является лучшим решением для использования констант в методах.
Я знаю, что теперь нет проблем с производительностью и памятью, но действительно ли это хороший подход для загрузки этих констант каждый раз при создании экземпляра этого класса? Я всегда думал, что, поскольку статические константы загружаются только один раз, класс действительно лучше. Я говорю, используя константы только в одном классе. – Tajnero
Да, проблема с производительностью будет отсутствовать, потому что текущий режим xcode постоянный, поэтому, если вы определяете переменную, в то время первый компилятор учитывал ее как константу, если вы определили переменную, и вы не мутируете ее, то компилятор даст предупреждение о том, что вы должен сделать его постоянным. Таким образом, режим по умолчанию является постоянным. Не следует влиять на производительность, если вы создаете константу как свойство. –
О, хорошо, кажется разумным, я принимаю ваш ответ. – Tajnero