Size: a a a

Scala User Group

2020 August 12

EB

Eugene Bosiakov in Scala User Group
а для скл как-то не очень
источник

AD

Apache DOG™ in Scala User Group
Но это все держится на доверии, потому что в тсп мы можем переслать произвольное количество байтиков, сконкатенировать байтики с байтиками, в итоге мы делаем обьекты одни байтики с другими байтиками, а если надо переслать меньше байтиков мы делаем обьекты "меньше байтиков", а если нужно это по разному комбинировать вообще туши свет, Это я все к тому что ТСР плохо ложится на ООП
источник

EB

Eugene Bosiakov in Scala User Group
Apache DOG™
Но это все держится на доверии, потому что в тсп мы можем переслать произвольное количество байтиков, сконкатенировать байтики с байтиками, в итоге мы делаем обьекты одни байтики с другими байтиками, а если надо переслать меньше байтиков мы делаем обьекты "меньше байтиков", а если нужно это по разному комбинировать вообще туши свет, Это я все к тому что ТСР плохо ложится на ООП
ок, но вокруг тцп либ не делают, программисты ваще не знают он есть под капотом
источник

EB

Eugene Bosiakov in Scala User Group
а с скл каждые два года перепридумывают как жить
источник

AD

Apache DOG™ in Scala User Group
Eugene Bosiakov
ок, но вокруг тцп либ не делают, программисты ваще не знают он есть под капотом
ну вокруг sql либ не делают, программисты ваще не знают что там jdbc под капотом
источник

EB

Eugene Bosiakov in Scala User Group
Apache DOG™
ну вокруг sql либ не делают, программисты ваще не знают что там jdbc под капотом
ага, тут у 5 человек в чате спроси как они работают с бд и у всех будет разный стек
источник

DK

Dmitry Kiselyov in Scala User Group
Eugene Bosiakov
ага, тут у 5 человек в чате спроси как они работают с бд и у всех будет разный стек
ну скажем не про tcp а про json такая же ведь фигня будет
источник

Oℕ

Oleg ℕizhnik in Scala User Group
Eugene Bosiakov
Вспомнил еще один аргумент.
В ЯП мы оперируем понятиями объектов, а в sql колонками и клеим их маппингом колонка -> поле в объекте. Но это все держится на доверии, потому что в sql мы можем выбрать произвольное количество колонок, можем заджоинить объект с объектом. В итоге мы делаем объекты Author, Book, AuthorWithBook, а если надо селектать разные наборы полей появляется SimpleBook и FatBook (а если нужно заджоинить еще и для разных наборов колонок это тушите свет).

Это я все к тому, что скл плохо ложится и на ооп.
ой, это какая-то "потребительская семантика" пошла
источник

Oℕ

Oleg ℕizhnik in Scala User Group
в ЯП вы оперируете огромным количеством разных понятий
источник

Oℕ

Oleg ℕizhnik in Scala User Group
объекты, функции, типы для того и даны, чтобы вы в них все понятия на земле могли втащить.
Если вы в ООП не можете колонками оперировать, зачем тогда вообще ООП
источник

s

saksonov 👀 in Scala User Group
Column[X,Y,U]
источник

KC

Kain Crow in Scala User Group
Eugene Bosiakov
Вспомнил еще один аргумент.
В ЯП мы оперируем понятиями объектов, а в sql колонками и клеим их маппингом колонка -> поле в объекте. Но это все держится на доверии, потому что в sql мы можем выбрать произвольное количество колонок, можем заджоинить объект с объектом. В итоге мы делаем объекты Author, Book, AuthorWithBook, а если надо селектать разные наборы полей появляется SimpleBook и FatBook (а если нужно заджоинить еще и для разных наборов колонок это тушите свет).

Это я все к тому, что скл плохо ложится и на ооп.
В ОРМ не надо никаких AuthorWithBook, если у вас на уровне БД нет каких-то дополнительных свойств связей, которые нужны в бизнес логике. Например в EF можно в конфиге прописать какая таблица с какой связана через третью, все проверится после компиляции и запросы неявно будут использовать эту таблицу. И у вас будет просто автор с массивом книг, который может быть пустым + книги с массивом авторов. Ну а если там связь 1:n то еще проще, даже конфиг не надо зачастую.

Разные модели тоже необязательно делать, те же EF/слик мапят на кортежи/анонимные типы спокойно.
источник

KC

Kain Crow in Scala User Group
Ну и вообще, аргумент что придется пару лишних классов создавать - ну такой себе. Если вам нужно лишний класс создавать - то вы и на чистом SQL уже пользуетесь какой-то абстракцией, в голове или в запросах.
источник

ЮБ

Юрий Бадальянц... in Scala User Group
Слушайте, а в дотти что в итоге с вацтбокс макросами?
источник

AD

Apache DOG™ in Scala User Group
Юрий Бадальянц
Слушайте, а в дотти что в итоге с вацтбокс макросами?
Tasty reflection?
источник

ЮБ

Юрий Бадальянц... in Scala User Group
Apache DOG™
Tasty reflection?
Ну то есть что-то есть?
источник

AD

Apache DOG™ in Scala User Group
Юрий Бадальянц
Ну то есть что-то есть?
Да, есть
источник

ЮБ

Юрий Бадальянц... in Scala User Group
Норм
источник
2020 August 13

Oℕ

Oleg ℕizhnik in Scala User Group
Юрий Бадальянц
Слушайте, а в дотти что в итоге с вацтбокс макросами?
в ограниченной форме
источник

Oℕ

Oleg ℕizhnik in Scala User Group
Называется whitebox inline
источник