@kotlin_lang

Страница 471 из 982
Bogdan
29.12.2017
08:08:18
DarkMentat
29.12.2017
08:08:20
Даже флетмапы понятне

?.let

Даниил
29.12.2017
08:08:28
стойте, это принципиальный момент

Google
Даниил
29.12.2017
08:08:33
если вы пишете код с optional

и делаете (по крайней мере часто) .get()

то вы делаете что-то очень сильно не так

Egor
29.12.2017
08:09:11
А что, опшенелы автоанбоксятся?

Igor
29.12.2017
08:09:11
то вы делаете что-то очень сильно не так
Поэтому человек и перешел на котлин, где можно просто писать !! :DD Краткость сестра таланта же

Bogdan
29.12.2017
08:09:23
something?.let { nonNullSmth -> ... } , не проще something?.let { }

Igor
29.12.2017
08:09:27
А что, опшенелы автоанбоксятся?
если про пример выше – на автомате написал

something?.let { nonNullSmth -> ... } , не проще something?.let { }
Нет, ненавижу it, читаемость уменьшается только так

Даниил
29.12.2017
08:09:49
Igor
29.12.2017
08:09:51
либо method reference, либо уж нормальную лямбду

Даниил
29.12.2017
08:09:54
я не про то

.flatMap, .map - вот как надо работать с Optional

и может где-нибудь в одном месте потом .get()

Google
Даниил
29.12.2017
08:10:25
но никак не всё время делать .get()

Bogdan
29.12.2017
08:10:26
и делаете (по крайней мере часто) .get()
я не сколько про сам гет, а про то чтобы получить обект нужно через железные ворота замка стучать

Igor
29.12.2017
08:10:31
Естественно

Даниил
29.12.2017
08:10:49
вам бы немножко на хаскеле покодить)

полюбите опшнл

Egor
29.12.2017
08:11:02
А что, мб срач на тему того, нужны ли в полях опшнлы?

Даниил
29.12.2017
08:11:03
возненавидите нуллаблы в любом виде

Igor
29.12.2017
08:11:11
я не сколько про сам гет, а про то чтобы получить обект нужно через железные ворота замка стучать
Это нормально если что. Скажите спасибо, что вам в коллекции первый элемент можно получить :D

Даниил
29.12.2017
08:11:14
А что, мб срач на тему того, нужны ли в полях опшнлы?
был уже, не в этом чате правда по-моему

в pro.jvm наверное

Egor
29.12.2017
08:11:34
а, я забыл что это котлинчат

Bogdan
29.12.2017
08:11:40
Нет, ненавижу it, читаемость уменьшается только так
если не делать милионы то норм, ну это уже стиль написания

Igor
29.12.2017
08:11:43
И они не сильно часто юзаются
Насчет корутин это зря. Это новый уровень абстракций в разработке, когда пишешь императивный код как раньше, а он весь такой неявно “асинхронный”.

Bogdan
29.12.2017
08:12:39
хочу их уже где-то заюзать, поробывать но не могу придумать где

что бы я нарадоватся не мог на эту красотень)

Egor
29.12.2017
08:13:27
Файловый менеджер напиши

Igor
29.12.2017
08:13:57
Bogdan
29.12.2017
08:14:01
а вообще - котлина это то что он без ИДЕ как без ног и рук

Igor
29.12.2017
08:14:04
Цены такому чуду не будет.

Google
DarkMentat
29.12.2017
08:14:44
Не знаю, на джаве я без иде тоже не могу писать

Bogdan
29.12.2017
08:15:03
bluetooth фреймворк или http на них забацайте :)
я с блютузом для джавы мучался, нужен была либа, не под андроид

Egor
29.12.2017
08:15:09
Типа, не было бы ужасного osgi, то хоть в nano и пиши

Bogdan
29.12.2017
08:15:31
Не знаю, на джаве я без иде тоже не могу писать
но все таки проще будет, с котлином просто нужно моного в голове держать

я про что побольше Hello Worda

DarkMentat
29.12.2017
08:16:23
но все таки проще будет, с котлином просто нужно моного в голове держать
Ну если какой-то редактор умеет в ctrl+q, то думаю так же

Но без ctrl+q я в джаве тожине могу х)

Igor
29.12.2017
08:17:12
я про что побольше Hello Worda
Изредко когда что-то быстро нужно написать пишу в VSCode. Очень удобная штука.

ну и грэдла консольная, естессна

Igor
29.12.2017
08:17:48
тяжеловата всетаки
Эт сколько плагинов ставить смотря :)

Igor
29.12.2017
08:17:59
Мне только intelli sense и подсветка нужна

Bogdan
29.12.2017
08:18:33
Эт сколько плагинов ставить смотря :)
даже без, хотя я там колин плагин не юзал и если он там, может там что-то суперовое)

Руслан
29.12.2017
08:26:46
Изредко когда что-то быстро нужно написать пишу в VSCode. Очень удобная штука.
Для меня это как: если мне нужно проехать 1км, то я пересяду на жигуль со своего VW. В идеи можно и отдельные файлики редактировать, в консоли набираю idea file и он открывается. При этом не нужно привыкать к тому что всякие vscode/atom/vim/sublime не умеют и десятой части того что умеет idea.

?
29.12.2017
08:27:40
А есть ли смысл изучать котлин, когда есть Java? 0/

Egor
29.12.2017
08:29:19
Да. () -> () -> () -> Unit

?
29.12.2017
08:29:26
?посоны

Google
Руслан
29.12.2017
08:31:14
Ну хз. Если мне надо проехать километр, я беру велосипед, а не машину. Так шо vim спасает иногда.
Но он же тебе даже импорт не добавит, код не отформотирует. Открывать 10 проектов в Idea это очень быстро и удобно. Если ты конечно README не правишь, а код

Vitalii
29.12.2017
08:32:05
Но он же тебе даже импорт не добавит, код не отформотирует. Открывать 10 проектов в Idea это очень быстро и удобно. Если ты конечно README не правишь, а код
Я как-то с импортами и форматированием нормально справляюсь :) Ну и как правило, если беру vim, то уже для написанного кода для мелких правок. Один импорт написать — не впадлу.

Руслан
29.12.2017
08:32:53
код форматирует и есть плагины и импорты добавляють
Т.е. нужно сидеть и затачивать, и потом будет как idea стартовать?)

Bogdan
29.12.2017
08:33:00
у меня idea условно запускается вместе с системой) как браузер)
ну я говорю о полевых условиях) так понятно если идея открыта я в ней править буду

Admin
ERROR: S client not available

Vitalii
29.12.2017
08:34:08
Ну и даже саму идею надо затачивать, так что выпад мимо. И по поводу старта: 5-6 плагинов в виме/саблайме ты при старте не замечаешь, а больше, как правило, и не нужно.

Руслан
29.12.2017
08:35:18
Vitalii
29.12.2017
08:36:38
Kotlin плагин из коробки, что еще нужно то? Я наоборот поотключал всякие JavaEE и прочее ненужное
Тебе ненужное, да. У разных разработчиков отличается воркфлоу. Мне как минимум приходится достраивать всякие лицензии, хоткии довешивать парочку. По-мелочи, но всё равно подстраивать.

Bulat
29.12.2017
08:37:48
Можно ли написать static extension function для final класса?

Vitalii
29.12.2017
08:37:56
А для некоторых случаев чтобы идея работала со всеми фичами надо минут 15-20 потратить (а иногда и больше) только чтобы доимпортировать всякий код и настроить проект.

Sergey
29.12.2017
08:38:03
Всем привет! Кто-то знает, можно ли сослаться на BaseApp? читал про механизм аннотация (типа @this ) но здесь они тоже не помогут



нужно прокинуть контекст в appModule

Руслан
29.12.2017
08:38:30
Igor
29.12.2017
08:38:48
Google
Vitalii
29.12.2017
08:38:53
Отлично. Ты не меняешь — вредная кастомизация, понятно.

Igor
29.12.2017
08:39:07
Igor
29.12.2017
08:39:11
Сделайте интерфейс инжектора и реализуйте его в application, а не плодите плохие синглтоны

Руслан
29.12.2017
08:39:22
Знаю почти все пакеты в своем проекте, мне автоимпорт нафиг не нужен.
Так если твой проект, значит он будет наверняка открыт уже в idea ?

Ну ладно, тут холивар linux vs windows получился, я этот оффтоп со своей стооны прекращаю.

Igor
29.12.2017
08:40:15
Так если твой проект, значит он будет наверняка открыт уже в idea ?
Да, только иногда идея виснет/в ней нужно что-то найти/нужно быстро посмотреть пару строк кода/дописать и сбилдить не ожидая, пока идея переконфигурит gradle (что она, зараза такая делает жутко долго и на каждый чих)

Igor
29.12.2017
08:41:13
pro tip: отключи автоимпорт
Не, там лик какой-то. 60Гб оперативы она так не съест на автоимпорте. При подключении к удаленным базам чаще всего ловлю

Igor
29.12.2017
08:44:11
Не-а. Она некоторое время не давала знать о себе, а потом фризанула мне комп, так что кнопкой пришлось перезагружать.

Не уверен, что там данные какие-то остались. Разве что о корелляции с Database tools можно пока что судить.

Bulat
29.12.2017
09:33:01
Можно ли написать static extension function для java класса?

конкретно хочу перегрузить метод Observable.error()

Igor
29.12.2017
09:36:50
If a class has a member function, and an extension function is defined which has the same receiver type, the same name and is applicable to given arguments, the member always wins https://kotlinlang.org/docs/reference/extensions.html#extensions-are-resolved-statically

Bulat
29.12.2017
09:37:39
я перегрузить хочу

ресивер же другой будет

точнее аргумент

Есть метод static Observable.error(Throwable throwable)

Igor
29.12.2017
09:38:42
Стат. java методы нельзя “перегружать” (пока не добавят тайпклассы) Можно только истанца, но все равно это не очень идея тк IDEA будет тупить с подскажками

Bulat
29.12.2017
09:39:38
Я хочу сделать fun Observable.error(responseBody : ResponseBody) : Observable

Страница 471 из 982