Сокрытие исключений
От: Vasiliy2  
Дата: 22.09.16 11:30
Оценка: 29 (2) +2
Здравствуйте.
Решил глянуть нутрянку CodeJam и обнаружил в пространстве имен IO метод, вызываемый при удалении объекта, содержащий такой вот код:
                try
                {
                    File.Delete(path);
                }
                catch (ArgumentException) { }
                catch (IOException) { }
                catch (UnauthorizedAccessException) { }


В моем сознании всегда было заложено: "не надо прятать исключения, потом боком выйдет". Поэтому , если мне приходилось их прятать, то обязательно с логом и в тех случаях, где не принесет никаких последствий.
С таким кодом, я так понимаю, возможен случай создания большой кучи временных файлов и не удаления по какой то причине, т.е. потенциально на диске может остаться гора мусора. В случае не скрытого исключения обнаружить эту ситуацию можно будет уровнем выше.

Но, CodeJam пишут у нас уважаемые люди с проведением кодревью, значит вероятность ошибок низка. Где у меня ошибка в рассуждениях?
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.