@oop_ru

Страница 32 из 785
Victor
18.12.2016
17:39:07
1. быстрее будет работать, 2. Меньше магии 3. проще в поддержке

тут уже начинаются namedQuery и по сути тот же SQL, что отстойно... поэтому мне нравится пока criteria

Sergey
18.12.2016
17:39:52
http://projects.spring.io/spring-data-rest/

Victor
18.12.2016
17:39:59
один раз разобрался и написал, потом изи что-то добавляешь и переделываешь, даже если кардинально

Google
Sergey
18.12.2016
17:40:00
мне вот эта концепция нравится, если применительно к java

тупо строишь read модель поверх твоего приложения под те UI которые нужны и не паришься

потому что если у тебя операции чтения и записи работают с одними и теми же структурами - ну такое... представление данных для чтения может сильно отличаться от того, что удобно для записи

если доводить до крайности - event sourcing

Victor
18.12.2016
17:41:40
ну я также и делаю с гибером

тупо строишь read модель поверх твоего приложения под те UI которые нужны и не паришься

Sergey
18.12.2016
17:42:01
ну я также и делаю с гибером
но ты же сказал что будешь сущности пхать во вью а то json сгенерит

Victor
18.12.2016
17:42:17
а в чем противоречие

модель то она под UI и есть

Sergey
18.12.2016
17:42:41
а что будешь делать в ситуациях, когда на запись тебе удобнее другая структура данных нежели нужна на чтение?

две сущности?

или как?

Victor
18.12.2016
17:43:20
ну где даже критерия не спасет можно делать неймед квери

Google
Victor
18.12.2016
17:43:28
это уже считай тот же твой любимый чистый sql

Sergey
18.12.2016
17:43:44
да не, мне критерии тоже нравятся

просто я могу просить не мэпить результат на сущность а жахнуть сразу в динамическую структурку и не париться

тупо слать в json_encode

p.s. я похапэшник, у нас может чуть по другому

Victor
18.12.2016
17:45:50
хз в итоге на практике вполне хватает фронтэндщикам отдать json под их задачи. Модели я проектирую тоже исходя из задач, которые нужны фронту. ЕСЛИ фронту нужны идиотские json (где-то что то замиксовать, где то выкинуть, а там вообще теги по разному называть... итд) то тут и будет в любом случае геморой

потому что нужен будет маппинг

но и при отказе от орм тоже будет маппинг

один хрен если ты берешься за такую задачу будет геморой

Sergey
18.12.2016
17:47:05
> но и при отказе от орм тоже будет маппинг не не, пожалуй я не так выразился. Я не предлагаю отказываться от ORM и фигачить native query, я предлагаю не мэпить результаты запросов на сущности.

Victor
18.12.2016
17:47:24
а на что их еще мэппить в случае ORM

Sergey
18.12.2016
17:47:37
ну и еще веселые штуки - иногда например надо писать в постгрю а читать из эластики уже подготовленные агрегированные данные

Victor
18.12.2016
17:48:12
ну в спринг+хибер мы делали такое, вполне легко решается)

Sergey
18.12.2016
17:48:37
Victor
18.12.2016
17:48:52
была постгря+оракл

использовался просто нужный конекшн для операции

но там были свои подводные камни спринга, он иногда дурно себя вел

Sergey
18.12.2016
17:50:16
не не, ты пишешь в постгрю, потом ложишь задачу на синк в очередь, перестраиваешь агрегацию в эластике, и списки всякие и поиски уже через нее

Victor
18.12.2016
17:50:19
транзакцию откроет для одной бд и операцию проведет в другой

ну скажу честно - хз

Google
Sergey
18.12.2016
17:50:56
хз... короч я знаю что для java почти все что надо есть

Aleh
18.12.2016
18:56:13
На тему event sourcing. Вот какой самый топовый вариант хранить и ивенты и вообще с ними работать?

Их в любом случае надо куда-то складывать, если в корне аггрегата хранить, то кроме лёгкой зависимости от инфраструктуры надо их ещё оттуда противно доставать

А если вне сущности, то ещё хуже (

Sergey
18.12.2016
18:59:11
кого противно доставать? события?

Aleh
18.12.2016
19:02:45
А чего Егора Бугаенко не позвали?

Sergey
18.12.2016
19:08:24
хз но я подпер стикеры с java богами

Да
я просто не понял о чем ты? Я ж не призываю отказыаться от сущностей, ты в случае с тем же event sourcing выборки для UI будешь делать только из read model, нет?

Sergey
18.12.2016
19:12:10
вопрос в воспроизведении событий?

Aleh
18.12.2016
19:12:20
И сохранении

Sergey
18.12.2016
19:12:30
ну с сохранением можно тупо сохранять доменные события

Aleh
18.12.2016
19:12:38
И вообще, что аггрегат должен делать

Sergey
18.12.2016
19:13:28
блин надо бы пописать чего

он должен менять свой стэйт + генерить ивенты

по идее

Google
Aleh
18.12.2016
19:15:56
Самое главное - логика))

Sergey
18.12.2016
19:16:27
короч надо пилить наш недо магазинчик

Aleh
18.12.2016
19:16:38
не ну да)
Оно слегка раздражает

Sergey
18.12.2016
19:16:42
через пару часиков засяду

Aleh
18.12.2016
19:17:03
Welcome )

Yegor
18.12.2016
19:17:13
спасибо)

Sergey
18.12.2016
19:19:03
@Enleur

там чего вчера придумали?

надо еще корзину через ES запилить

Aleh
18.12.2016
19:19:58
надо еще корзину через ES запилить
Прям как Грег Янг описывает в докладе?)

Sergey
18.12.2016
19:20:09
Прям как Грег Янг описывает в докладе?)
ну идеальный же кейс для ES)

помимо микро трейдинга

Aleh
18.12.2016
19:20:42
Финансы мне кажется покруче

А ещё есть подозрение, что медицина)

Sergey
18.12.2016
19:21:10
покруче - да, но... вся смакота будет когда ты будешь пилить систему которая должна оценивать динамику и принимать решения

Aleh
18.12.2016
19:21:29
Не спорю

Sergey
18.12.2016
19:21:31
тогда возможность проигрывать уже собранные ивенты на новом алгоритме просто бесценна

можно получать довольно точный фидбэк

Aleh
18.12.2016
19:22:00
Главное - надо чтобы ивенты были как можно стабильнее

Google
Aleh
18.12.2016
19:22:16
Менять ивенты в миграциях - боль

Sergey
18.12.2016
19:22:28
ну не меняй)

Aleh
18.12.2016
19:22:58
Так отсюда и вытекает маленький нюанс)

Sergey
18.12.2016
19:23:00
храни всю имеющуюся инфу, в этом же суть

Aleh
18.12.2016
19:24:05
Очень часто бывает, что вон то старое событие на самом деле 5 отдельных. Поддерживать все версии со временем станет трудно

Не часто, просто бывает

Вот про что я

Sergey
18.12.2016
19:27:06
ну это возможно... возвращаемся к принципам SOLID и хрустальному шару

Sergey
18.12.2016
20:20:22
короч надо пилить наш недо магазинчик
надо требования в readme собрать что ли

Sergey
18.12.2016
22:39:17
да, в gherkin было бы идеально) поможешь?)

ну хотя бы ревью

guga
20.12.2016
17:26:32
Тут @yegor256 вещает о java и oop https://youtu.be/qAxLtSYN0nw

Aleh
20.12.2016
17:33:14
о, live

Ilia
20.12.2016
17:40:49
А запись будет?

Страница 32 из 785