с выкидыванием эксепшенов, если до этого при попадании из контроллера в сервис данные валидируются по тем же самым правилам? Или наоборот, стоит писать только 1 раз предусловия и не дублировать их в валидации на входе в сервис?
С одной стороны вроде не рекомендуют использовать эксепшены для flow-control, а с другой программист-то может сетнуть что-то уже и после проверки в сервисе. А дублирование проверок выглядит подозрительно.
есть очень большая разница между валидацией входящих данных и проверкой прекондишенов/инвариантов логики
Одно дело - валидация реквестов, другое - логика домена. Ну и стоит подумать над необходимостью сеттеров.
Обсуждают сегодня