Заметки
• initializer (инициализатор) – аналог конструктора в Java – создание объекта с заданными stored properties
• Главная цель инициализатора – заполнить все свойства значениями (даже если это nil), чтобы все свойства объекта
были инициализированы
• Константы – можно заполнять через init (после этого значение поменять нельзя) – многие новички думают, что
константу нужно заполнять сразу при объявлении
Заметки
• Понятие «synthesized initializers» (синтезированные) - инициализаторы, которые автоматические создает
компилятор
• Также можно создавать свои инициализаторы с любыми параметрами – главное, чтобы в итоге были заполнены все
свойства объекта
• * В уроках сокращенно можем называть init, чтобы не писать полностью initializer или инициализатор
Failable (Optional)
• Инициализатор тоже может быть optional:
• init?
• init!
Плагин
• Генератор (чтобы вручную не создавать нужные init)
• https://github.com/rjoudrey/swift-init-generator
Домашнее задание
• Установить и попробовать генератор
• https://github.com/rjoudrey/swift-init-generator