
Stanislav
03.11.2016
10:16:49
вопрос про котлин.
почему val Class<MyClass> c = javaClass не влезает в метод fun m(c: Class<Any>) {} ?
зато влезает метод с дженериками fun <T> m(c: Class<T>) {}

Alexey
03.11.2016
10:21:36
Я не настоящий сварщик, но подозреваю дело в ко, контр и инвариантности

Stanislav
03.11.2016
11:04:07
так, посоны, беру свои слова обратно про котлин. Таки есть незаменимые плюшки по сравнению с джавой

Alexey
03.11.2016
11:04:21
какие?

Google

Alexey
03.11.2016
11:04:23
пали

Stanislav
03.11.2016
11:05:22
хвостовая рекурсия и экстендж методы

Alexey
03.11.2016
11:05:51
оптимизация хвостовой рекурсии в смысле? как в кложе и скале?
это плюс, согласен
а второе это что?
ну мы тут с джавой хотя бы сравниваем. понятно что скала лучше
аа
ну имплиситы короче

Stanislav
03.11.2016
11:08:15
я бы сказал, что сильно предсказуемее
(по сравнению со скалой)
но я все-таки сравнивать со скалой не хочу
во-первых, потому что не писал ничего на скале, только читал
ну на этом и хватит

Google

Stanislav
03.11.2016
11:11:17
мне нужна лучшая джава, а пересмотр своих взглядов на жизнь
кстати, раз уж про скалу вспомнили, может посоветуете какой-нибудь опенсорс на scalaz почитать? шоб каноничненько и до костей пробирало ?

Oleksandr
03.11.2016
11:13:18
хвостовая рекурсия не особо нужна, без уклона в ФП
а котлиновские расширения транслируются в статик методы -- тот же сахар

Alexey
03.11.2016
11:13:22
сырцы scalaz )

Oleksandr
03.11.2016
11:13:59
http://eed3si9n.com/learning-scalaz
но я бы посоветовал cats смотреть, они поприятее

Stanislav
03.11.2016
11:14:46

Denis
03.11.2016
11:16:39
в скалазе разве кроме ? | что-то еще используется? :)

Oleksandr
03.11.2016
11:16:42
а, ну с этим сложнее)
akka-http, но он тяжелый для понимания

Stanislav
03.11.2016
11:16:53
(пользуясь случаем передаю привет ребятам из cloudbees, которые написал клиент к зендеску с таким кодом)

Oleksandr
03.11.2016
11:34:21

Stanislav
03.11.2016
11:35:22
Это да
Но хочется как страшилки на ночь почитать, знаете ли

Oleksandr
03.11.2016
11:41:31

Ilshat
03.11.2016
12:03:03
че то все про скалу. че такая крутая вещь. стоит бросать яву и изучать?

Alexey
03.11.2016
12:03:38
если хочется функциональщины, то скала

Denis
03.11.2016
12:03:41
отличный вброс!

Anatol
03.11.2016
12:03:56
Для общего развития в любом случае полезно будет.

Ilshat
03.11.2016
12:04:04
а на выходе тот же ява?

Google

Alexey
03.11.2016
12:04:05
а так в 90% проектов джавы хватает
тот же байткод

Ilshat
03.11.2016
12:04:55
интересно. надо поизучать

Митко Соловец?
03.11.2016
12:05:14
скалка - для общего развития, но джавы современной практически для всех задач хватает

Alexey
03.11.2016
12:06:07
если нужна какая-то адовая многопоточность или асинхронность, то я бы скалу взял все таки

Антон
03.11.2016
12:06:42

Митко Соловец?
03.11.2016
12:07:44
но таких проектов намного меньше

Антон
03.11.2016
12:08:13
Ерланг для общего развития мне кажется лучше скалы, скала гораздо сложнее, и поворачивает мозг тоже збс

Artem
03.11.2016
12:09:59
Идрис для общего развития мне кажется лучше скалы

Митко Соловец?
03.11.2016
12:12:28
Хаскелль для общего развития мне кажется лучше Идриса

Ilshat
03.11.2016
12:14:34
а работал кто с kryonet?

Ilshat
03.11.2016
12:16:01
видимо нет. перейду тогда на netty

Антон
03.11.2016
12:16:22
мы используем крио для сериализации, но в связке с JGroups

Ilshat
03.11.2016
12:17:26
клиент на андроиде. думал юзать kryonet, благо его сериализацию юзаю. да и легкий. но непонятно как шифровать данные.

Антон
03.11.2016
12:18:23

Admin
ERROR: S client not available

Антон
03.11.2016
12:19:30
самое простое https://www.owasp.org/index.php/Certificate_and_Public_Key_Pinning
но этим не должно крайо заниматься.

Google

Stanislav
03.11.2016
12:19:51

Ilshat
03.11.2016
12:20:26
проблема не в выборе метода шифрования. а встраивание в kryonet

Alexey
03.11.2016
12:21:16
когда много всяких джобов делают что-нибудь параллельно
решая общую задачу

Stanislav
03.11.2016
12:22:07
звучит как обычная многопоточность

Alexey
03.11.2016
12:22:13
ага
обычная многопоточность это ад

Stanislav
03.11.2016
12:22:31
тогда ладно

Антон
03.11.2016
12:22:37

Alexey
03.11.2016
12:22:52
фп тем и хорош, что нету переменных и прочего изменяемого говнеца

Stanislav
03.11.2016
12:30:40
ну вот кстати вопрос
как на фп сделать производительный чат-рум ?
в смысле на полном мутабилити
MutableRef<ImmutableList<Msg>> не предлагать
выносить стейт в редис или куда-то еще тоже

Igor
03.11.2016
12:34:55
чат рум по сути своей имеет линейную структуру, а значит при нормальном проектировании иммутабельной структуры данных, всё должно работать быстро.

Stanislav
03.11.2016
12:42:42
то есть будет в итоге один реф на мутабельный стейт, который будет держать в себе иммутабельные структуры данных?

Igor
03.11.2016
12:47:03
структура будет одна, внутри мутабельная. снаружи (в контексте языка), будет казаться, что у тебя дофига иммутабельных структур.
ну, не имеет смысла пересоздавать массив (список) каждый раз при добавлении сообщения в чат.
так что разработчики языка (компилятора) заранее позаботятся о том, чтобы были оптимизации по памяти.

Google

Oleg
03.11.2016
13:32:16
Name [jdbc/somebase] is not bound in this Context. Unable to find [jdbc]. Как это побороть? Гугл бессилен. Конфиги перепроверил все, драйвер mysql.jar в папку lib томката закинул

Pavel ?
03.11.2016
13:32:54
а базу то создал????

Oleg
03.11.2016
13:33:55
ну да, и в идее настроил доступ к ней

Oleksandr
03.11.2016
13:35:45