Здравствуйте, DGurin, Вы писали:
DG>В момент обработки исключения у тебя есть вся необходимая информация (во всяком случае — теоретически). Полезна ли она юзеру... и полезна ли она вообще — потом разберемся.
вопрос как именно собрать достаточно подробную информацию об ошибке, чтобы юзер понимал что происходит и предпринял ряд подходящих шагов, направленных на решение
по стоимости возможные решения можно распределить так:
1) сам решит проблему
2) обратиться к админу с ошибкой
3) обратиться к админу, предоставив ему еще и логи
4) обратиться к саппорт компании, которая продала продукт (самый дорогой и долгий метод) (возможно, обращение все же админ будет делать, а не юзер)
я предложил два решения с разной подробностю ошибок
1) "Cannot find file"
2) "Failed to open database. Details: cannot find file"
в плане имплементации первый вариант делается легко : пишем только throw, а catch пишем лишь на самом верху
во втором случае catch надо писать уже много где, чтобы цеплять информацию о контексте выполнении. неясно как дешево это сделать (чтобы и времени много не уходило и код не перемешивался с ценной логикой)