T! — optional, который автоматически force-unwrap при использовании; при nil — краш.
Разбор
- Исторически для Storyboard outlets (
@IBOutlet).
- В современном коде предпочитают обычный
T? или non-optional после init.
- Скрывает optional-ность в сигнатурах — риск.
- Не смешивайте без дисциплины с настоящими optional.
Итог
IUO — удобство ценой скрытого краша; минимизируйте в новом коде.