При обработке исключения нужно определить ожидаемую реакцию: восстановление, понятную ошибку вызывающему коду или повторное пробрасывание с сохранением стека. Молчаливый catch обычно скрывает проблему.
Что следует добавить при обработке исключения в коде?
При обработке исключения нужно определить ожидаемую реакцию: восстановление, понятную ошибку вызывающему коду или повторное пробрасывание с сохранением стека. Молчаливый catch обычно скрывает проблему.
Короткий ответ
Что ответить на собеседовании
Подробный разбор
Ответ с пояснениями
При обработке исключения нужно определить ожидаемую реакцию: восстановление, понятную ошибку вызывающему коду или повторное пробрасывание с сохранением стека. Молчаливый catch обычно скрывает проблему.
В C# повторный throw; сохраняет исходный stack trace, в отличие от throw ex;. Перехватывайте только те ошибки, для которых есть осмысленное действие, и освобождайте ресурсы через using/finally.
Логируйте безопасный контекст, не секреты и не одно исключение на каждом уровне. Retry допустим лишь для подходящих временных ошибок и безопасных повторов. Самого кода в условии нет, поэтому конкретную недостающую инструкцию назвать нельзя.