Junior — Middle
¿Cómo implementar la inicialización perezosa de una propiedad para que se cree solo cuando se accede a ella por primera vez?
sobes.tech AI
Respuesta de la IA
В Swift для ленивой инициализации свойства используется ключевое слово lazy. Оно гарантирует, что свойство будет создано только при первом обращении к нему.
Пример:
class DataManager {
lazy var data: [String] = {
print("Инициализация data")
return ["One", "Two", "Three"]
}()
}
let manager = DataManager()
// Свойство data еще не инициализировано
print(manager.data) // При первом вызове происходит инициализация
Такой подход полезен, когда инициализация свойства ресурсоемкая и не нужна сразу при создании объекта.