Я пытаюсь использовать наилучшие методы для обработки исключений, и я немного потерял.
Написание надежного программного обеспечения сложно.
если я уважаю принцип, что ошибка должна быть пойманы как можно скорее
Это плохой принцип. Что делает возможность это связано с этим? Принцип, который вы должны написать только возможно код не помогает. Что делает раз об этом? Это тавтология, что правильное место для обработки исключения - , где исключение можно корректно обрабатывать; ни скорее и не позже чем это.
Где можно исключить правильное обращение? Это полностью зависит от (1) исключения и (2) того, как вы собираетесь его обрабатывать. Это звучит как очень бесполезный совет, но ваш вопрос невероятно расплывчато! Оставим исключения из него и рассмотрим только вычисления. Где находится Лучшее место для расчета? Лучше ли делать вычисления раньше или позже? Как вы могли бы ответить на этот вопрос для всех возможных вычислений?
Я просто хочу избежать того же типа ошибок во всех моих методах, чтобы я мог просто уловить мой большой метод?
Хорошо, давайте подумаем об этом. Предположим для аргумента, что правильный для каждого метода обработки исключения. При каких обстоятельствах корректно перемещать обработку исключений из каждого вызываемого абонента и в вызывающего? Это легко перечислить:
- Обработчики не должны зависеть от состояния, известного только вызываемым лицам, но не вызывающим.
- Обработчики должны делать одно и то же в каждом вызове.
- Вызов не должен вызываться нигде, кроме вызывающего.
В этой ситуации вы находитесь? Затем можно переместить обработчик в вызывающий объект без изменения семантики и тем самым уменьшить дублированный код.
Я хочу, чтобы закрыть мое приложение, поэтому зарегистрировать ошибку и закрыть мое приложение
Затем положить обработчик как можно ближе к Main, насколько это возможно.
В качестве альтернативы, обработайте «Я выгружаю приложение, потому что я получил событие необработанного исключения», и поместил туда вашу логику обработки.
Отметьте, что если ваше приложение отключается анонимно, как это , у вас нет гарантии, что ваша система регистрации не является тем, что взорвало, и вы можете снова взорвать его. Быть осторожен!
Исключения не должны быть «пойманы как можно скорее», исключения *** должны быть пойманы, когда их можно обработать соответствующим образом *** –
Я хотел бы знать, где пришел принцип «как можно скорее» из. – itsme86
Я читал, что в Интернете –