...на код, присланный мне разработчиком на ревью.
У нас было два Transaction Manager'а, три Kafka Producer'а, три или четыре Rest Template'а...
Не то, чтобы это всё было нужно в приложении, но раз начал коллекционировать бины, то иди в своём увлечении до конца.
Единственное, что меня беспокоило — это аспекты. В мире нет никого более беспомощного, безответственного и безнравственного, чем человек в запое аспектно-ориентированного программирования.
У нас было два Transaction Manager'а, три Kafka Producer'а, три или четыре Rest Template'а...
Не то, чтобы это всё было нужно в приложении, но раз начал коллекционировать бины, то иди в своём увлечении до конца.
Единственное, что меня беспокоило — это аспекты. В мире нет никого более беспомощного, безответственного и безнравственного, чем человек в запое аспектно-ориентированного программирования.
no subject
Date: 2020-12-14 10:58 am (UTC)На мой вежливый недоуменный вопрос "зачем нам полный набор минусов спринга здесь, где от него очевидно нет пользы?" я получил ответ "у спринга минусов нет!". А ведь умный парнишка, пару лет опыта самого что ни на есть боевого продакшена...
no subject
Date: 2020-12-14 12:32 pm (UTC)Если же делается универсальная библиотека, то к ней иногда полезно приделать заодно обёртку в виде спринговых бинов
(а к ней 100500 авто-конфигураций и прочее адище)для более удобного втыкания в спринговые приложения. Что, конечно, не мешает выстрелить себе в ногу внутри спринга точно такими же способами, которыми бибилиотека позволяет это сделать без него. Вот, например, мы вкручивали в спринговое приложение Hazelcast, а там под спринговой обёрткой лежит библиотека, в которой есть единое статическое хранилище, которое отдаёт подключения к кластерам по имени конфигурации -- или создаёт конфигурации и подключения по дефолту при первом обращении, а потом хоть обконфигурись, поезд уже ушёл, под этим именем в статике валяется уже другое подключение.