Использование исключений в Objective-C - PullRequest
0 голосов
/ 15 марта 2012

Я новичок в мире Objective-C.При изучении некоторых приложений для iOS / Mac я заметил, что try -catch используется редко, если используется вообще.Например, в Java он используется почти все время.Почему это не так часто встречается в Objective-C?

Ответы [ 2 ]

5 голосов
/ 15 марта 2012

Исключения в Objective-C обычно используются для действительно исключительных обстоятельств и почти всегда ошибки программиста. Для передачи исправимой ошибки используйте шаблон NSError **.

2 голосов
/ 15 марта 2012

Существует много методов SDK, которые принимают параметр NSError** и возвращают BOOL. Чтобы указать ошибку, они возвращают значение false и возвращают ошибку через параметр ошибки для передачи информации.

Исключения используются , но, как правило, для случаев, когда имеется некоторый сбой на уровне времени выполнения - например, некоторый объект не может обработать селектор. Хотя это может показаться противоречащим тому, что я только что написал, исключения, как правило, указывают на ошибку в дизайне, а не на ошибку времени выполнения.

Идиома NSError** - это все, что вам нужно для таких вещей, как сбой соединения URL, преобразование данных и т. Д., Если существует условие ошибки, но программа действительно не должна быть убита сразу.

Начало чтения: Руководство по программированию обработки ошибок

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...