Spring Data JDBC + функциональная архитектура = 4 года в проде. Полет отличный
Расскажу свою историю о поиске простого девелоперского счастья и превращения своих проектов из больших комьев грязи в простые (насколько это возможно) и поддерживаемые системы.
Покажу на примере матрицы структуры зависимостей (DSM) и графа вызовов реальных проектов, что я имею в виду под большим комом грязи. Кратко расскажу, что такое декомпозиция модели на агрегаты и практичная функциональная архитектура, и как их применение влияет на DSM и граф вызовов.
По ходу дела расскажу, почему я решил, что JPA не совместима с декомпозицией модели и функциональной архитектурой и почему среди всех альтернатив выбрал Spring Data JDBC.
Наконец, расскажу, с какими проблемами в использовании Spring Data JDBC в пяти проектах с 2021 года я столкнулся и как их обошел.
P.S.
В докладе я ни разу не упомяну монады, не напишу ни одного трехэтажного генерика или функции с хвостовой рекурсией и не посчитаю ни одного факториала.