@jvmchat

Страница 683 из 2890
Stanislav
02.11.2016
12:32:04
я делаю вывод, что Optional не нужен. Он особо ни от чего не защищает, а @Nullable удобнее в ипользовании

а вообще глобальный вывод, что T? > @Nullable > Optinal

Victor
02.11.2016
12:32:35
А что есть T? в котлине? Расстановка проверок на null всюду и везде?

Stanislav
02.11.2016
12:33:24
А что есть T? в котлине? Расстановка проверок на null всюду и везде?
в рантайме только в интерпопсе с джавой , все остальное убирается в компайл тайме

Google
Pavel ?
02.11.2016
12:35:05
вы думаете, из джавы нельзя передать null в аргумент типа Т? ?
ну вообще-то не в T? а в T тогда)) и всеравно спасет)

Oleksandr
02.11.2016
12:36:09
Pavel ?
02.11.2016
12:36:27
а ты говоришь что ты понял все хорошо)

ты передаешь в тип кот может быть нуль нуль) ессесно будет нуль)

если не использовать генерики то котлин не нуль тип закомпилиирует как примитив

Oleksandr
02.11.2016
12:37:45
и теперь надо все аргументы с ? писать?

Pavel ?
02.11.2016
12:37:48
и из явы ты нуль в примитив не передашь

Oleksandr
02.11.2016
12:38:25
а если def foo(t : T)

как я понимаю, либо я все пишу с ?, либо могу словить нпе

Виталий
02.11.2016
12:40:57
? пишешь если разрешаешь null

Pavel ?
02.11.2016
12:41:01
тут как бы если писать апи на котлине с использованием не нуль типов, то по хорошему надо перед этим сделать или нуль чек лэер ну или котлин автоматом чекать будет

Oleksandr
02.11.2016
12:42:09
итого, снова человеческий фактор, и среб пули нет

ессно не надо писать с наллами, это зло

Google
Oleksandr
02.11.2016
12:42:47
после каждого налла в паблик апи умирает котенок

Pavel ?
02.11.2016
12:43:09
ну этот вариант из всех самый лучший, потому как даже не используя не нуль типы, котлин будет на нуль чекать автоматом

Oleksandr
02.11.2016
12:44:19
это то же самое, что подозрительный аргумент аннотировать, засунуть спецметодом в опшн или проверить руками

Pavel ?
02.11.2016
12:44:20
тобишь везде где T? будет T?.foo()

иначе не закомпилируется

это то же самое, что подозрительный аргумент аннотировать, засунуть спецметодом в опшн или проверить руками
ребята хотябы что-то делают в этом направлении) это видно) можно оспаривать и говорить что это говно) тем неменее работает)

и нарваться на NPE шансов гораздо меньше)

Oleksandr
02.11.2016
12:46:13
ровно столько же, сколько у аналогов

Pavel ?
02.11.2016
12:46:46
пробовал опционали и самы, не то

Oleksandr
02.11.2016
12:47:00
ну, на вкус

Pavel ?
02.11.2016
12:47:13
видимо да)

Oleksandr
02.11.2016
12:47:30
я против котлина ничего не имею, просто не особо понимаю, чем он реально лучше дж8

Pavel ?
02.11.2016
12:48:39
ну скажем так, он лучше тем, что изначально язык колбасится по юз кейсам которые используются в продакшене на яве

Alexander
02.11.2016
12:48:55
Ребята, привет! Я ищу сильного джависта с опытом в биллинге, мб есть у кого хорошие знакомые к кому могу обратиться?

Oleksandr
02.11.2016
12:49:31
слишком абстрактно)

Pavel ?
02.11.2016
12:49:53
все остальное можно нагуглить)

или почитать спеку языка)

Oleksandr
02.11.2016
12:50:42
если я хочу чего-то нового, я беру скалу если не хочу рисковать, то дж8

котлин для какого кейса?

пока он выглядит, как куча сахара

Google
Pavel ?
02.11.2016
12:51:45
котлин когда дж заебала, а надо писать продакшен без хуйни)

как-то так)

Alexander
02.11.2016
13:07:00
вы опишите что надо в деталях))
Да, можно на "ты" :) Помогаю сейчас коллеге, ищем в международную компанию в отдел биллинга сильного джависта (EE). Ребята делают решение, на основе которого другие могут продавать хостинг, софт и т.п. Всё в облаке. Компания крутая, белые, дмс, офис у м. Белорусская. Если интересно, могу подобнее описать в личке, скинуть сайт, что бы тут не спамить оффтопом.

Stanislav
02.11.2016
13:09:28
когда хорошо заходят функциональные плюшки джавы, но надоела многословноность в функцианальных интерфейсах, иммутабилити и хочется без оберток на чекд эксепшенами

Oleksandr
02.11.2016
13:15:49
то есть как скалу без переизбытка ФП и колдунств?

Stanislav
02.11.2016
13:17:04
типа того

или как груви, от которого не тянет блевать

или как ML на jvm

Oleksandr
02.11.2016
13:17:59
ээ, мл-то к котлину каким боком?

Stanislav
02.11.2016
13:18:07
или как ML для тех, кто умеет только в джаву

Stanislav
02.11.2016
13:18:11
ну очень похож же

Oleksandr
02.11.2016
13:19:01
я знаком немного с окамлом, и вот он совсем не похож

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

Alexander
02.11.2016
13:21:25
Ребят, могу сказать со стороны рекрутмента - за последний год работал по 6 вакансиям скалы и ни одной котлина...

Oleksandr
02.11.2016
13:21:26
часть комьюнити её юзают как хаскель, на который есть работа, и это раздражает

Alexander
02.11.2016
13:23:34
При чем скала в половине случаев под спарк для бигдаты

Google
Stanislav
02.11.2016
13:23:52
да )

Alexander
02.11.2016
13:24:00
А, ща почитаю

Stanislav
02.11.2016
13:25:09
наврал, чуть больше. Версия 1.0 от 15 февраля

Alexander
02.11.2016
13:25:46
Ого, это от ребят из джетбрейна. Интересно

Alexander
02.11.2016
13:27:07
Да, Москва. Могу сайт скинуть в личку, там хорошая презентация.

Victor
02.11.2016
13:27:43
Pavel ?
02.11.2016
13:28:08
Admin
ERROR: S client not available

Alexander
02.11.2016
13:31:04
Я правильно понял, что Котлин, это как скала, но компилится быстрее?

Stanislav
02.11.2016
13:31:16
не

Pavel ?
02.11.2016
13:31:38
наврал, чуть больше. Версия 1.0 от 15 февраля
да уже 1.1 вроде норм, с хз кол-вом имплементаций под корутины)

Stanislav
02.11.2016
13:31:44
котлин, это что-то среднее между скалой и джавой

Oleksandr
02.11.2016
13:36:31
котлин, это что-то среднее между скалой и джавой
кстати, что любопытно, изначально котлин именно так и продвигали потом пришли маркетолухи и запретили упоминать скалу ясно, зачем, но не красиво

Alexey
02.11.2016
13:39:34
какие там сейчас реальные преимущества у котлина перед джава8

?

Alexey
02.11.2016
13:40:21
ну андроид понятно. там вообще недоджава

а для не мобильщиков?

Ilya
02.11.2016
13:41:04
Типа безопасное программирование с минимальным риском нпе

Google
Vitaliy
02.11.2016
13:41:08
Кстати, меня тоже nullable бесит в Котлине

Проблем от него только больше

Alexey
02.11.2016
13:41:35
ну optional в java8

Vitaliy
02.11.2016
13:41:36
Допустим, у тебя объявлен non-volative nullable field

Ilya
02.11.2016
13:41:52
ну optional в java8
Неудобно

Vitaliy
02.11.2016
13:41:54
Зачем каждый раз в методе требовать его проверять на null?

Alexey
02.11.2016
13:41:58
почме?

нормальная такая монадка

Vitaliy
02.11.2016
13:42:18
Один раз проверил — хватит, поле-то только для одного потока предназначено

Ilya
02.11.2016
13:43:07
почме?
Имхо громоздкий синтаксис

Vitaliy
02.11.2016
13:43:11
Что самое вкусное, проверка работает в виде: Utils.checkNotNull(mField, "mField"); Вопрос — что мешает сразу после этой проверки стать полю null?

Igor
02.11.2016
13:43:34
а что мешает стрелять себе по ногам?

вероятно, здравый смысл?

Alexey
02.11.2016
13:43:56
еще плюсы будут? implicit вроде как да?

Ilya
02.11.2016
13:45:50
Зачем каждый раз в методе требовать его проверять на null?
считается хорошей практикой, чтобы null'ов вообще не было. https://www.infoq.com/presentations/Null-References-The-Billion-Dollar-Mistake-Tony-Hoare

Vitaliy
02.11.2016
13:46:56
а что мешает стрелять себе по ногам?
Так вроде бы все эти проверки нужны для Котлиновского видения безопасности

Если в случае с обычным null мы вылетим там, где будем его использовать, в случае с котлином мы вылетим сразу же при передаче его в неправильное место и не будем по стектрейсу искать, как оно туда попало

Выходит, периодически эта их штука сбоит

Страница 683 из 2890