Size: a a a

2020 November 06

D

Dima in pro.jvm
Artjom Kalita
Еще можно относится к контроллеру как к интерфейсу -  и смотреть с той стороны - а если вам придется из реста переходить на графкуель - как болезнено это будет ?
Если контролер чистенький маленкий то заменить его Резолвером будет весьма быстро а бизнес логика она где-то там в глубине сервисов
отличный пример
источник

D

Dima in pro.jvm
сталкивался с таким кейсом
источник

D

Dima in pro.jvm
проще рефакторинг с изолированными модулями
источник

DZ

Dmitriy Zanin in pro.jvm
Dima
JPA не должна протекать дальше дао/репозитория
Или всё же дальше сервиса не должна?
источник

D

Dima in pro.jvm
Dmitriy Zanin
Или всё же дальше сервиса не должна?
давай так скажу - JPA скрыта от пользователей контрактов Service Layer
источник

D

Dima in pro.jvm
zafar
ДТО != любой дата класс.

Очень много путаницы и споров возникает из-за этого недопонимания. Как и у всех шаблонов у ДТО есть применение. В шаблонах структура и интерфейс классов не самое главное.
интересная формулировка
источник

D

Dima in pro.jvm
жаль я с ней не соглашусь
источник

DZ

Dmitriy Zanin in pro.jvm
Dima
проще рефакторинг с изолированными модулями
А если будет желание перейти с jpa на, к примеру, jooq. Получается, что все ентити в сервис слое тоже избыточны и создают проблемы для рефакторинга?
источник

D

Dima in pro.jvm
Dmitriy Zanin
А если будет желание перейти с jpa на, к примеру, jooq. Получается, что все ентити в сервис слое тоже избыточны и создают проблемы для рефакторинга?
несколько вариантов есть
источник

D

Dima in pro.jvm
zafar
ДТО != любой дата класс.

Очень много путаницы и споров возникает из-за этого недопонимания. Как и у всех шаблонов у ДТО есть применение. В шаблонах структура и интерфейс классов не самое главное.
источник

A

Artjom Kalita in pro.jvm
Dmitriy Zanin
А если будет желание перейти с jpa на, к примеру, jooq. Получается, что все ентити в сервис слое тоже избыточны и создают проблемы для рефакторинга?
Берешь вкатываешься в onion/hexagonal/clean architecture и будет успех =) правда это тоже определенные косты
источник

D

Dima in pro.jvm
Dmitriy Zanin
А если будет желание перейти с jpa на, к примеру, jooq. Получается, что все ентити в сервис слое тоже избыточны и создают проблемы для рефакторинга?
у жука генерируются его классы для трансформации row set, вот из них по-хорошему надо перейти на твои классы
источник

D

Dima in pro.jvm
если модель идентичная тому, что достается из базы, тогда убираются jpa entity и можно чисто одними dto обойтись
источник

D

Dima in pro.jvm
в любом случае контракт сервиса останется без изменений
источник

D

Dima in pro.jvm
весь движ на уровне persistence/dao/repository
источник

A

Artjom Kalita in pro.jvm
А у кого-нибудь бывал опыт переписывание JPA бейзед проекта на джокл ? интересно послушать доводы и к чему это привело
источник

z

zafar in pro.jvm
источник

z

zafar in pro.jvm
Dima
жаль я с ней не соглашусь
...like any pattern they are useful in a certain context. Patterns always have two parts: the how and the when. Not just do you need to know how to implement them, you also have to know when to use them and when to leave them alone.

https://www.martinfowler.com/bliki/LocalDTO.html
источник

D

Dima in pro.jvm
дата класс - класс содержащий только данные, он может выступать в качестве DTO
источник

z

zafar in pro.jvm
ДТО обычно имплементятся в виде дата-классов, да. Но не каждый дата класс это ДТО
источник