да необязательно от крашей, и необязательно там let пихать. все проще. просто такой if, где мы описываем реакцию на неверное поведение, чтобы последующий код работал верно и чтобы последующему коду что-то гарантировать (что что-то не nil, что что-то больше 0). Синтаксический сахар, без него жить можно и не волноваться, if-ом можно заменить. но он сахар, с сахаром жить приятнее