
Sergey
12.02.2017
17:06:55
ну они не рвались как бы сделать что-то революционное
делали язык для удобной разработки
а не швейцарский нож

Boris
12.02.2017
17:07:18
это отдельное искусство правильно заимствовать

Google

Михаил
12.02.2017
17:07:39
речь лишь о том, что сейчас читаю вышеозначенную книжку и понимаю, что в котлине почти все предусмотрено из нее)

Aliaksei
12.02.2017
17:07:41
просто чёт вырубает когда аргумент слышишь, так это java c сахаром...

Boris
12.02.2017
17:08:19

Aliaksei
12.02.2017
17:08:30
или ещё слышал, зачем kotlin если он потом всё равно в java байткод компилируется

Sergey
12.02.2017
17:08:45
?

Aliaksei
12.02.2017
17:08:58
так бы и уебал
образно

Luger
12.02.2017
17:09:27

Boris
12.02.2017
17:09:28
так бы и уебал
так ведь никаких нервов на всех кто в интеренете неправ не хватит

Aliaksei
12.02.2017
17:09:41

Igor
12.02.2017
17:09:56
так бы и уебал
Лечи нервишки
Есть ведь еще Lombok, вот его тоже можно сравнить с Kotlin (зачем Kotlin если есть Lombok?)

Boris
12.02.2017
17:10:18

Михаил
12.02.2017
17:10:30

Google

Aliaksei
12.02.2017
17:10:46

Sergey
12.02.2017
17:11:09

Aliaksei
12.02.2017
17:11:11
Lombok кстати тоже офигенный экзампл.
и autovalue ))

Boris
12.02.2017
17:11:26

Aliaksei
12.02.2017
17:11:43
короче у меня списочек есть как потролить котлиниста

Boris
12.02.2017
17:12:23

Igor
12.02.2017
17:12:47
Ну раз такое дело, давно думал составить топ неиспользуемых фич Kotlin (которые аукнутся при обновление версии)
1) Делегаты-классы (На одой из конф. ДмитрийЖ говорил, что не может предложить хорошего кейса)
2) Методы в интерфейсах (не совместимы с Java8 default методами)

Aliaksei
12.02.2017
17:13:25
делегаты классы – ок

Sergey
12.02.2017
17:13:26
>1) Делегаты-классы (На одой из конф. ДмитрийЖ говорил, что не может предложить хорошего кейса)
в смысле не может предложить кейса?

Aliaksei
12.02.2017
17:13:27
использую

Sergey
12.02.2017
17:13:34
делегаты это ж ахуенная штука
для декораторов

Boris
12.02.2017
17:13:37
я чот не понял про делегаты

Aliaksei
12.02.2017
17:13:38
второе решится с 1.1 же, ен?

Boris
12.02.2017
17:14:02
а методы будут совместимы, да

Sergey
12.02.2017
17:14:41
>2) Методы в интерфейсах (не совместимы с Java8 default методами)
тоже обещали полную поддержку jre8, так же как и 9

Aliaksei
12.02.2017
17:14:44
вот пример из кеширующего декоратора
class CachingNavigationRepo(val repo: NavigationESRepository<ESDocument>) : NavigationESRepository<ESDocument> by repo { ... }
из прода так сказать
одно удовольствие же так писать

Google

Boris
12.02.2017
17:15:59
да, это не самая используемая фича, но когда нужна, то это очень удобно

Aliaksei
12.02.2017
17:16:11
Просто мало кто пишет декораторы))

Sergey
12.02.2017
17:16:26
ну да. проще ж все в куче писать

Boris
12.02.2017
17:17:11
у меня есть несколько мест, где не удалось использовать композицию и я их испольозвал как миксины вроде
class A() : B, I1 by I1Impl(), I2 by I2Impl()...

Aliaksei
12.02.2017
17:17:24
Короче наброс не защитан от Игоря

Boris
12.02.2017
17:17:46
да, для троллинга нужно что-то поживее
я к тому, что эти декораторы в классах -- они не только для врапперов, но и для миксинов

Aliaksei
12.02.2017
17:19:19
Угм, норм пример

Sergey
12.02.2017
17:19:26
если искать на доу в вакансиях - 40 скала, 8 котлин. живенько входит в массы

Aliaksei
12.02.2017
17:19:50
Ну мы как то обсужадли что не везде Где котлин об этом говорят

Boris
12.02.2017
17:19:54
хотя у этого решения есть некоторые нюансы, жаль я про них ишью не завел

Igor
12.02.2017
17:21:15
А методы в интерфейсах часто юзаете

Boris
12.02.2017
17:21:39

Sergey
12.02.2017
17:22:07

Igor
12.02.2017
17:22:29

Boris
12.02.2017
17:23:22
правда многие методы можно вынести просто как экстеншн, но и настоящие интерфейсные время от времени встречаются. Тем более, если в 1.1 они будут транслироваться в java8 дефолтовые
методы

Igor
12.02.2017
17:24:52

Boris
12.02.2017
17:24:57

Igor
12.02.2017
17:26:55
В подкасте про android (выпуск 24) ребята из JB когда рассказывали про фичи 1.1
и сказали что у них там что-то не склеивалось и в Java8 они все равно будут генерить классы.

Google

Aliaksei
12.02.2017
17:28:01
Решаться будет на уровне компиляции в какой таргет

Boris
12.02.2017
17:29:00
https://youtrack.jetbrains.com/issue/KT-4779
похоже вот этот ишью

Igor
12.02.2017
17:42:23
Те пока нет? Если что я нашел точно место в подкасте (1:07:15) https://soundcloud.com/leonid-bogolubov/android-dev-podkast-24

Boris
12.02.2017
17:49:14
Похоже, что действительно пока нет и фикс-версии у задачи нету
Но рано или поздно сделают, я так думаю

Quantum Harmonizer
12.02.2017
17:50:24
А в чём проблема неиспользуемых фич языка? Вы часто пользуетесь, например, локальными именнованными классами в Java? Ну и что?

Boris
12.02.2017
17:51:24
Лишние фичи ограничивают возможности развития языка
Ну и создают лишний шум в понимании языка
Но пока очевидно лишних фич я не знаю
В котлине

Tony
12.02.2017
18:21:33
Помогите пожалуйста с Kotlin Koans
первая папка — это задания, а вторая — тесты на выполнение заданий, я так понимаю
а как тут запустить тест?

Igor
12.02.2017
18:23:32
Ну есть же плагин для IDEA

Tony
12.02.2017
18:23:51

Igor
12.02.2017
18:24:27
Edu Kotlin https://i.gyazo.com/58e1c31b8f17e5227113dbd0c97ed465.png
Это и есть koans

Google

Tony
12.02.2017
18:25:27
ща гляну что за плагин
ага скачал
перезапустил идею
а юзать то как?
@igor_ur

Igor
12.02.2017
18:33:50
а юзать то как?
Может мне за тебя еще и решить их ?
http://parttv.ru/uploads/posts/2012-11/1353407001_vovka-v-tridevyatom-carstve-4.jpg

Tony
12.02.2017
18:34:16
не-не
есть и решать сам должен

Igor
12.02.2017
18:35:05
Create New Project дальше https://i.gyazo.com/1539bc9aa6dc96bb09365407a09bff9d.png

Tony
12.02.2017
18:35:20
ааааааа
понял
спасибо

Sergey
12.02.2017
20:29:13
class A
class B @Inject constructor(val a: A)
class C @Inject constructor(val a: A, val b: B)
как-то красивее можно сделать?