Я бы поймал его, но в отладочных сборках либо выгружает стек вызовов, либо повторно бросает его [так что приложение выходит с «неперехваченным исключением»]. В сборках релизов ловец должен распечатать сообщение, которое дает подсказку о том, что произошло, и что пользователь должен сообщить о проблеме.
Мое мышление здесь в том, что, поскольку (по крайней мере, иногда) возможно, что ваше приложение попадет в такой необычный случай использования, которого вы не ударили. Просто выход с «неперехваченным исключением» действительно не очень удобен для пользователя. Поэтому делать что-то «немного менее суровое» всегда является хорошей идеей - даже если вы действительно ничего не можете сделать, чтобы исправить ошибку в коде, хорошо, если есть какие-то объяснения пользователю о том, что произошло на языке, который пользователь (который, вероятно, не программист) может понять.