@scala_ru

Страница 124 из 1499
Vladislav
27.09.2016
17:42:54
лев вообще про js

ээ

я тут оказывается 20 минут со стеной спорил?

в скале синтаксически будет не так приятно раскрывать такую структуру на месте

Google
Vladislav
27.09.2016
17:43:35
в groovy это будет через ? и !

Oleksandr
27.09.2016
17:43:56
а "неревантный джсон" будет в памяти отнимать место?

Vladislav
27.09.2016
17:44:02
я в своё время писал агрегатор на фрилансе, и очень рад что конкретно скрипты для парсинга писал именно на груви

Oleksandr
27.09.2016
17:44:07
на синтаксис мне большей частью все равно

Vladislav
27.09.2016
17:44:14
не

Oleksandr
27.09.2016
17:44:21
(я про что-то типа SAX парсеров)

Vladislav
27.09.2016
17:44:38
у тебя по сути json парсится на входе, а дальше ты по нему бегаешь уже как по мапе

хм

Oleksandr
27.09.2016
17:44:53
так чтобы бегать по мапе, надо прочитать, не?

Vladislav
27.09.2016
17:44:57
да

я писал ДО сакс

а какую тебе валидацию даст sax

Oleksandr
27.09.2016
17:45:18
в скале доп оверхед на создание классов на каждый чих (этого можно не делать)

Google
Vladislav
27.09.2016
17:45:20
у тебя в самом конце может скобочки не быть

Юрий
27.09.2016
17:45:21
@troy4eg я могу ошибаться, но play-json вроде как раз умеет доставать вот такие вложенные значения с короткой записью

Vladislav
27.09.2016
17:45:23
разве нет?

Oleksandr
27.09.2016
17:45:35
я про кейс "вытащить одно-единственное поле из огромного джсона"

Wystan
27.09.2016
17:45:41
в скале доп оверхед на создание классов на каждый чих (этого можно не делать)
про константы думать в алгоритмах - на бэкенде не писать

Vladislav
27.09.2016
17:45:47
@troy4eg я могу ошибаться, но play-json вроде как раз умеет доставать вот такие вложенные значения с короткой записью
ну надо глянуть, может научились. Я когда писал, был еще плей 1, а плей 2 вот вот зарождался

Oleksandr
27.09.2016
17:46:32
плей парсит весь джсон, не лениво

Vladislav
27.09.2016
17:46:53
просто есть у тебя юзер, у юзера phone, внутри него code (код страны допустим) user?.phone?.code

Wystan
27.09.2016
17:47:29
запахло что-то кофескриптом.

Vladislav
27.09.2016
17:47:36
ну я на кофе не писал

но не удевлюсь, если они что-то с груви взяли

да и не только они

в свифте кажется тоже

Юрий
27.09.2016
17:48:13
Такое можно сделать на скале, просто это нужно довольно редко

Vladislav
27.09.2016
17:48:53
в груви оно вытекает из самого языка, а не из доп либ или чего-то подобного

ну и вообще, в языках без типизации оно так принято

кейс не частый, я согласен

Юрий
27.09.2016
17:49:30
Если у тебя это был частый кейс - implicit conversion с перегрузкой ?. и в путь

Vladislav
27.09.2016
17:49:30
но я рад, что спустя 20-25 минут мы пришли к тому, что он есть

Если у тебя это был частый кейс - implicit conversion с перегрузкой ?. и в путь
а что в рантайме в итоге будет? не будет ли доп обвязок и вызовов

Google
Lev
27.09.2016
17:50:19
жс - груви… в этом кейсе разницы нет. есть у тебя поле в джейсоне. value: Int. всегда тебе слали инты, но вдруг передумали и начали слать строки. а ты в отчётах выводил obj.value + 42

Vladislav
27.09.2016
17:50:35
ну есть разница

Юрий
27.09.2016
17:50:40
Vladislav
27.09.2016
17:50:41
в груви такая хрень не прокатит

Lev
27.09.2016
17:50:55
тебе пример прислать?)

прокатит легко

println(new JsonSlurper().parseText('{ "name": "1" }').name + 3)

Vladislav
27.09.2016
17:52:04
ну ок, оно отработает, наеврное

Lev
27.09.2016
17:52:15
только не спрашивайте, почему я 3 к имени прибавляю ))

Vladislav
27.09.2016
17:52:29
только мне кажется, если ты так писать будешь - тебе что-то оторвут

Integer.parseInt какой-нибудь никто не отменял

а то и вовсе

Lev
27.09.2016
17:53:12
ну ок, оно отработает, наеврное
так об этом изначально речь и шла. ты или пишешь одну красивую строку и валидируешь и покрываешь тестами или используешь менее красивую типизацию, но живёшь спокойно

Vladislav
27.09.2016
17:53:14
в редкий юс кейсах может понадобиться бигдецимал

Oleksandr
27.09.2016
17:53:14
так в том и кейс, что в апи1 была стринга, в апи2 стал инт, а смысл поменялся

груви-то схвает и то, и то

Vladislav
27.09.2016
17:53:28
ну окей

и упаду я по парсингу

из строки не сделается инт

Lev
27.09.2016
17:53:51
а это уже некрасиво

Google
Vladislav
27.09.2016
17:53:53
пф

Lev
27.09.2016
17:53:58
и тут плюсы груви таят

Vladislav
27.09.2016
17:54:07
у тебя под капотом всё тоже самое происходит

лол

Oleksandr
27.09.2016
17:54:11
(я совершенно не знаю груви, как я понял, у него слабая типизация)

Lev
27.09.2016
17:55:01
у тебя под капотом всё тоже самое происходит
ты только что говорил о красоте груви, но теперь внезапно решил вкорячить валидацию

Юрий
27.09.2016
17:55:03
у тебя под капотом всё тоже самое происходит
Неправда. Груви схаваеь код, приведет молча типа и запишет в базу ошибочное значение.

Lev
27.09.2016
17:55:11
подтвердив начальный тезис

Admin
ERROR: S client not available

Юрий
27.09.2016
17:55:14
А это уже ошибка бизнес логики будет

Vladislav
27.09.2016
17:55:29
теперь ты не читаешь

ох, тяжело ребята, тяжело с вами)

Lev
27.09.2016
17:55:46
так это валидация

Юрий
27.09.2016
17:55:53
+

Lev
27.09.2016
17:55:59
так и будешь каждое поле валидировать

Vladislav
27.09.2016
17:56:07
под валидацией я думал вы про чуть чуть другое

каждое?

АХАХАХ

Google
Vladislav
27.09.2016
17:56:14
каждое

3 поля надо, 1 должно быть числовым

ну всё, обвалидировался)

Юрий
27.09.2016
17:56:46
Ну а если их 40?

Lev
27.09.2016
17:57:02
все 3 нужно будет валидировать

Vladislav
27.09.2016
17:57:12
а зачем остальные 2 валидировать?

меня устроят строки

Lev
27.09.2016
17:57:30
потому, что там тоже битое могут прислать

Vladislav
27.09.2016
17:57:34
или эти строки пахнут хуже, потому что груви-джава строки, а не скала-джава

битое что?) значение?

Юрий
27.09.2016
17:57:47
Ты опять про вырожденный случай, а мы про общий

Vladislav
27.09.2016
17:57:50
поле text у твитта

Viacheslav
27.09.2016
17:58:12
Оо ура! Я дочитал до конца чата

Vladislav
27.09.2016
17:58:22
мне кажется, тебе памятник надо

Lev
27.09.2016
17:58:24
Vladislav
27.09.2016
17:58:34
нене, мне надо работать

а где-то не так? ну где-то хуже, где-то лучше…типа костылей нету ни у кого? ну-ну

что за сферический код в вакууме

или проект

Страница 124 из 1499