Академический Документы
Профессиональный Документы
Культура Документы
Заметки
• Optional - это контейнер: может содержать любой тип данных или nil
• Зачем нужно:
• Компилятор будет обязывать проверять значения указанных переменных на пустоту (nil)
• Не сможете присвоить nil в обычную переменную (если она не Optional)
• В Java также доступен класс Optional (все больше библиотек и фреймворков сейчас переходят на этот тип)
• Если попытаться извлечь значение из контейнера, где будет nil - runtime ошибка – одна из самых неприятных для
разработчика, т.к. возможно «падение» приложения (поэтому лучше отлавливать на этапе компилятора)
Проверка
• Желательно использовать проверку на nil перед использованием переменной (т.е. сразу не извлекать):
• Optional Binding (if let, guard let, switch-let) – вместо let можно использовать var
• Optional Chaining – сокращенный вариант проверки на nil (без использования лишних if)
• Выполнить Hometask