примере дог и кет. А к релизу добавят еще 2^8 животных, во что класс превратится? И останется ли он удобочитаем?
на первой работе, у меня было два шаблона отправки email сообщений, соотвественно что я сделал? Enum - FIRST_TYPE, SECOND_TYPE - потом if else. Через пол года их стало 4, потом через год уже 10)
У меня 2 месяца назад возникла задачка - приостанавливать работу если обработано N докумеетов. Я вынес логику в отдельный объект-проверку что можно обрабатывать и в робота инжектил лист фильтров, проверяя что все они проходят. Сейчас у меня там 4 фильтров - проверка не выходной день, пповерка что не больше N документов в час и т д - а сделал бы просто if он бы уже раздулся на кучу строк. А, и каждый фильтр отулючается через @ConditionalOnProperty
Ну так через полгода и надо было расширяемость добавлять.
Обсуждают сегодня