
Sergey
16.06.2018
13:49:44
тогда естественно, когда рич модел, аннотации будут выглядеть странно
и я так писал, и cqrs + es делали
всё равно далек от души этот подход

Митко Соловец?
16.06.2018
13:50:02
ну тогда вперед

Google

Митко Соловец?
16.06.2018
13:50:11
расскажешь, получилось или нет
потому что часто при использовании рич модель разработчики делают толстый слоенный пирог в 1 классе
по крайней мере такой опыт у меня был

Artjom
16.06.2018
13:54:21
Класс Order из 6к LoC

Митко Соловец?
16.06.2018
13:54:27
да
я тру ооп обычно вижу в либах
а в бизнес-проектах анемичная модель
потому что мы должны инкапсулировать поведение внутри

Sergey
16.06.2018
13:56:39
Как ты разобьёшь тот самый Order

Митко Соловец?
16.06.2018
13:56:49
и если в случае с анемик я могу создать OrderService1, OrderService2 etc
то в случае с рич как поступить?
на примере ордера покажи как
те самые процедурки, завернутые в классы?

Google

Митко Соловец?
16.06.2018
13:57:36
и композицией передавать их в ордер класс?
неплохо

Sergey
16.06.2018
13:59:49
Скинь сюда потом и отметь, если не трудно

Artjom
16.06.2018
14:00:18
А декораторы там будут?

Sergey
16.06.2018
14:00:52

Митко Соловец?
16.06.2018
14:07:55
http://samolisov.blogspot.com/2012/10/anemic-domain-model.html
здесь тоже + и -

[Anonymous]
16.06.2018
19:36:29
Привет

Andrey
16.06.2018
21:44:22
У тебя это Бин и аннотации к нему выполняют одну функцию - хранение данных в бд. Больше ни для чего их лучше не использовать. От того, что маппинг будет прописан в xml, суть это не изменит. Ты не должен отдавать например их на клиента.
Если я правильно уловил, то это будет что-то типа активРекордс у тебя. У тебя этот домен будет выполнять сразу две функции. Храниться в бд и тащить бизнес логику. У тебя должны очень быстро вылезти кейсы, когда это невозможно будет впихнуть вместе
И с сериализации как!?

1337
16.06.2018
22:12:34
а что за сериализация имеется в виду?

Andrey
16.06.2018
22:29:07

1337
16.06.2018
22:34:08
у базового класса метод toJson определяешь
или любой другой

Andrey
16.06.2018
22:42:56

1337
16.06.2018
22:45:45
ты про deep copy?
я думаю это на себя берут либы

Marat
16.06.2018
22:46:41
ох уж эти ормопроблемы

1337
16.06.2018
22:46:43
в тот же object mapper посылаешь и все

Google

1337
16.06.2018
22:47:05

Alpha
17.06.2018
00:27:01
Какой бы проект запилить, что бы Kotlin потрогать, желательно за все интересные места?

1337
17.06.2018
00:38:08
fizz buzz enterprise

Alpha
17.06.2018
00:40:03

Quantum Harmonizer
17.06.2018
06:01:45

Alpha
17.06.2018
06:02:43
Жсон либу, похоже, классика

Quantum Harmonizer
17.06.2018
06:03:48

Alpha
17.06.2018
06:04:41
О_о
Ну мне для скалы советовали это. Вполне вероятно что и для Котлин зайдёт

Quantum Harmonizer
17.06.2018
06:05:45

Alpha
17.06.2018
06:06:06

Admin
ERROR: S client not available

Quantum Harmonizer
17.06.2018
06:06:40
Чтобы сделать что-то годное в этой сфере, нужно, как Wizzardo, фигачить изо дня в день и не останавливаться)

Alpha
17.06.2018
06:10:18
Спасибо за идею!

Quantum Harmonizer
17.06.2018
06:20:08
Схоронил, как высплюсь — займусь
Прикол в том, что для разных эндпоинтов можно выставить разные конвертеры, и это будет явно, очевидно и менее рефлективно.
При этом можно построить его на базе Retrofit, потому что там есть Platform, ConverterFactory, okhttp/okio, etc.

Mikhail
17.06.2018
07:06:44

Artjom
17.06.2018
07:08:20
Главное, чтобы тебе нужен был, не так-ли?

Mikhail
17.06.2018
07:09:09
Так то да, но своя мотивация не бесконечна

Google

Quantum Harmonizer
17.06.2018
07:09:09

Mikhail
17.06.2018
07:09:53
+ одна звёздочка на гитхабе, одно открытое issue

Artjom
17.06.2018
07:10:07
Ну и соответственно конкурентно способность на рынке труда возрастает если добротный проект опенсоурснутый

Mikhail
17.06.2018
07:10:16
Может когда базу подтяну будет лучше

Quantum Harmonizer
17.06.2018
07:10:30

Mikhail
17.06.2018
07:12:39

Alexander
17.06.2018
07:14:58

Quantum Harmonizer
17.06.2018
07:15:05

Mikhail
17.06.2018
07:16:23

Quantum Harmonizer
17.06.2018
07:16:45

Mikhail
17.06.2018
07:18:40
Такое апи есть не у всех

Quantum Harmonizer
17.06.2018
07:19:14
ну, это гибкость, возможность оптимизировать критические места