Size: a a a

Scala User Group

2021 July 12

ΛВ

Λнтон Войцишевский... in Scala User Group
Большинство прост не знают ещё, что с ними можно делать
источник

ΛВ

Λнтон Войцишевский... in Scala User Group
Ждут блогпост
источник

ЮБ

Юрий Бадальянц... in Scala User Group
А ещё их не сделать в скале 3
источник

Oℕ

Oleg ℕizhnik in Scala User Group
да сделать сделать
источник

ЮБ

Юрий Бадальянц... in Scala User Group
Без аннотации?
источник

Oℕ

Oleg ℕizhnik in Scala User Group
да
источник

W

Władysław in Scala User Group
Всем привет! Я начинающий дата инженер, писал в основном на джаве но сейчас работаю со спарком и имею дело со скалой.

Пришел к вам с вопросом: есть ли какой-то гайдлайн или что-то вроде такого по написанию кода на скале. У меня вместо адекватного красивого кода, выходит plain main со всеми операциями.

Проблема в том, что если я пытаюсь обобщить - разрастаются либо параметры класса либо параметры методов. И еще одна проблема (spark related): везде нужно implicit прокидывать сессию...



Вот.
источник

ЮБ

Юрий Бадальянц... in Scala User Group
А как тогда?
источник

GP

Grigory Pomadchin in Scala User Group
мне кажется что надо просто подходить к написанию кода не как к спарко коду а как обычному приложению, тогда все будет ок
источник

GP

Grigory Pomadchin in Scala User Group
а так  с таким вопросом больше в лерн; наверное есть что-то про разбивание кода на классы функции пакеты и файлы (может и тут подскажут)
источник

GP

Grigory Pomadchin in Scala User Group
ну а по поводу сессий - можно ее пихать в контекст, который и так сейчас таскают за собой)
источник

N

Nikolai in Scala User Group
Конкретно про имплицитную сессию в спарке - у меня на прошлой работе её носили в ридер монаде. Не знаю насколько это хорошая идея, но один из вариантов
источник

GP

Grigory Pomadchin in Scala User Group
^ this; рабочий вариант
источник

EK

Evgenii Kuznetcov in Scala User Group
За вычетом того, что в спарке надо воевать с сериализацией и closure cleaner. Поэтому нужно писать максимально процедурно, предпочитая object classам
источник

GP

Grigory Pomadchin in Scala User Group
не нужно так писать
источник

GP

Grigory Pomadchin in Scala User Group
с сериализацией беды только когда серизуется то что и не должно сериализовываться; сессии к примеру
источник

EK

Evgenii Kuznetcov in Scala User Group
@pomadchin если sc.map(x => f(x)) вызван внутри класса, то кэпчурится this (который должен быть объявлен сериализуемым) вместе со всеми полями. Дальше, если повезет, cleaner может поля проигнорировать. Но может и попытаться сериализовать и обвалиться в рантайме.
Может я что-то не так делаю, но уже 4 года борюсь с такими проблемами
источник

GP

Grigory Pomadchin in Scala User Group
this должен быть и правда сериализуем у меня никогда с этим не было проблем
источник

N

Nikolai in Scala User Group
А в чём проблема объявлять всё что нужно сериализируемым?
источник

GP

Grigory Pomadchin in Scala User Group
на самом деле если приглядеться то все коты, зивы, и тп имеют все объекты (которые возможно) сериализуемыми как раз для спарка (были и ишши на этот счет)
источник