Ответ на сообщение Программист. пользователя Камон
Обсуждаете котлеты из мух. Что такое "плохие данные" для начала? Кто-то ручками в БД пошалил? Ну так это не наш уровень ответственности, показываем пользователю идентификатор ошибки, которую легко отследить по логам и умываем руки. Пользователь прислал слово "х.й" вместо даты рождения? Для этого есть валидация. Слово "х.й" проскочило валидацию? Чиним валидатор, заодно проверяем не утёк ли у нас метод "для внутреннего пользования" во внешний мир. Это плохой термин "защита от внешнего мира". На самом деле выбирают меньшее из зол - эксепшен понятной природы с описаловом или сломаться потом по фик пойми какой причине. А защититься от плохих данных нельзя, плохие данные - плохие результаты.