@kotlin_lang

Страница 307 из 982
You
05.09.2017
20:11:57
onCLick

L большое

Sergey
05.09.2017
20:12:24
А ещё у тебя опечатка
Да, точно, не заметил

Спасибо за советы, попробую

Google
Va
05.09.2017
20:12:38
да, это все будет не нужно, если сделать этот интерфейс лямбдой )

Lev
05.09.2017
20:31:58
Может груви ещё попробовать

Va
05.09.2017
20:45:17
я тоже так думал

grails, вся фигня

но нет (

не хватает в нем котлина

Lev
05.09.2017
20:57:17
не хватает в нем котлина
Что такого особенного в котлине?

Vic
05.09.2017
21:18:26
Кто-нибудь знает, почему дизайнеры языка для ()-нотации выбрали метод invoke, а не apply, пойдя в разрез со скалой и джавным интерфейсом Function?

Igor
05.09.2017
21:20:37
Потому что они C# любят ? (там Invoke )

Vic
05.09.2017
21:21:17
Ах вот как

? animufag ?
05.09.2017
21:21:34
вообще да неочевидное решение, хотя само слово вполне ок. мб чтобы видеть где джавовый аплай , а где котлиновый инвок

ну они могут встретиться рядом

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

Google
? animufag ?
05.09.2017
21:22:56
Потому что они C# любят ? (там Invoke )
тогда бы они фильтр назвали where и тд

Dmitry
05.09.2017
21:28:09
ну холивара ради invoke более говорящее имя чем apply для лямбды, как по мне

Vic
05.09.2017
21:29:55
А apply уже забукано для экстеншен лямбды с ресивером this...

Еще вот такой пример. data class Azaza(val x: Int, val y: Int) { companion object { operator fun invoke(x: Int, y: Int) = Azaza(y, x) } } fun main(args: Array<String>) { println(Azaza(1,2)) } Конструктор экранирует invoke. В скалке конечно такой *** нет ) Хотя, если это цена избавления от слова new, то я готов платить такую цену ))

А напомните еще вот что. Исторически по-моему был приоритет у экстеншен метода над мембером? Но к 1.0 релизу это поменялось и теперь member always wins. Где там обнаружили косяк в первоначальном дизайне?

Rikland
05.09.2017
21:35:51
Vic
05.09.2017
21:35:55
Пример может кто знает

Rikland
05.09.2017
21:39:09
Как по мне так изучение нового и есть наша работа, если учесть темпы развития ИТ
Понятное дело что в проекте есть новое. Но сколько из того что уже на текущий момент юзабельно. Вроде есть GWT, но GWT мертво. Есть люди которые трясли рельсами.

Как по мне так изучение нового и есть наша работа, если учесть темпы развития ИТ
Есть чувак в конце концов, который придумал Node.js и вот только вчера новость, о том, что ему ок с Golang

Rikland
06.09.2017
05:56:03
Платят.
Странно, мне платят за решение бизнес проблем (: И я не слышал от владельцев: нас не устраивает язык программирования.

Руслан
06.09.2017
05:58:30
Зависит от компании в которой ты работаешь :) в технологических вполне могут платить

Протобаф на фронт это конечно мощно, за что вы так браузеры ненавидите то?

Rikland
06.09.2017
06:00:57
Протобаф на фронт это конечно мощно, за что вы так браузеры ненавидите то?
Мне тоже так показалось, что это довольно странно. Тк я сомневаюсь, что разработчики браузеров упролись и это дело оптимизировали. Поскольку метнстрим, это раньше был html, а потом json.

whalemare
06.09.2017
06:06:36
Парни, есть в стдлибе котлина функа, которая разбивает коллекцию на pair с элементами?

whalemare
06.09.2017
06:09:41
collection.zip
Спасибо!

Руслан
06.09.2017
06:11:22
Мне тоже так показалось, что это довольно странно. Тк я сомневаюсь, что разработчики браузеров упролись и это дело оптимизировали. Поскольку метнстрим, это раньше был html, а потом json.
Одно другому не мешает, просто протобаф это бинари, а браузеру бинари парсить не самая простая задача, да и бессмысленно, т.к. в итоге ты все равно на es6 пишешь, типов то нет :) поэтому мы использовали сваггер чтобы генерить тайпскрипт, ну а сейчас можно просто на Котлине писать

Sergey
06.09.2017
06:16:27
collection.zip
zipWithNext же, zip это чтобы 2 коллекции собрать попарно

Руслан
06.09.2017
06:19:51
Google
Sergey
06.09.2017
06:22:45
и это аж в 1.2 будет

Vic
06.09.2017
06:26:22
c.zip(c.drop(1)) что-то типа такого

Boris
06.09.2017
06:41:09
c.zip(c.drop(1)) что-то типа такого
Правильно что её добавили в стдлиб, я её уже несколько раз писал

Quantum Harmonizer
06.09.2017
06:47:50
Что такого особенного в котлине?
прагматизм в каждом принятом решении

whalemare
06.09.2017
07:04:29
Руслан
06.09.2017
07:09:11
Что? Долго будет? =)
Неэффективно

Lev
06.09.2017
07:13:05
Неэффективно
А что есть аналогичное для браузера?

Руслан
06.09.2017
07:13:33
Язык с типами :)

Quantum Harmonizer
06.09.2017
07:14:44
Неэффективно
Так в браузере всё неэффективно, там же JS :)

Lev
06.09.2017
07:17:58
Язык с типами :)
Если появится еще одна команда разработки - я не могу ее принуждать писать на котлине. Но я очень хочу четкого определения пакетов. Вся система которую я ща пишу работает на очередях. И внешние обращения тоже через очереди (через своеобразный firewall). Я бы очень хотел иметь нечто типа протобафа для использования с сообщениях очереди. может черт с ним со сжатием траффика, но хотя бы иметь железную четкость в определениях пакетов. Ща используются тектовые описания - хреново помогают. Может такой контингент.

Вот еще http://msgpack.org/

еще thrift какой то.... да их тут кишмя

Руслан
06.09.2017
07:25:07
Тебе что нужно, чтобы у данных была схема, или чтобы разработчики на фронте типы имели?

Если хочешь чтобы при удалении поля из сообщения на фронте ломалась сборка, нужен язык с типами: Kotlin, Typescript. И остаётся простое: описать схему и генерировать по ней классы. А под низом будет обычный json.

Quantum Harmonizer
06.09.2017
07:29:34
Вот еще http://msgpack.org/
тот же JSON по сути

Lev
06.09.2017
07:31:19
Я хочу чтобы мой набор классов для пакетом на каком то там ЯП воспроизводился в классы пакетов у коллег на других ЯП. Ну и... хоть какая то валидация этого. Соответственно коллегам очень просто понять - поменялись ли пакеты, все ли они заполнили. Как то так.

Но на каком языке - не мое дело. Хотят - пусть пишут на js. Но у них точно будет некое отображение моих пакетов и они могут дешево их обновлять.

Google
Lev
06.09.2017
07:33:15
Тебе что нужно, чтобы у данных была схема, или чтобы разработчики на фронте типы имели?
Так что я думаю мне нужна схема. Т.к. сборка может ломаться только при определенных ЯП.

Rikland
06.09.2017
07:49:23
Так что я думаю мне нужна схема. Т.к. сборка может ломаться только при определенных ЯП.
Напиши плагин к maven, который тебе по схеме будет генерить сущности которые можно в json сериализовать.

Можно даже за основу взять ту же xsd

Плюс что-то ещё что будет описывать связи

Sergey
06.09.2017
07:52:33
есть же http://json-schema.org/

Николай
06.09.2017
07:55:16
Всем привет, кто пробовал собирать в js что нибудь? (кроме hello)

Rikland
06.09.2017
08:03:08
Можно пойти другим путём, сущности писать на Java и потом брать annotation processing и генерить классы для Kotlin и схему.

Всем привет, кто пробовал собирать в js что нибудь? (кроме hello)
Да. Пробовал даже используя роутеры на js делать одностраничное приложение, впрочем, оно в процессе.

Николай
06.09.2017
08:11:19
Rikland
06.09.2017
08:12:47
А как там с библиотеками совместимость? (js библиотеками)
Не могу сказать, что все от и до реализовано (: Так, проба пера. https://github.com/riskul/

Николай
06.09.2017
08:18:22
@Rikland спасибо)) буду играться

Rikland
06.09.2017
08:24:19
Есть ещё knockoutjs, но там много кода и он после генератора, его нужно переписывать. Что-то более сложное не пробовал конвертировать. Естественно мануалы, как это использовать нужно искать на оригинальных репозиториях/сайтах (: ссылки в описаниях

Lev
06.09.2017
08:27:50
через градл собрал js их котлина (amd) В index.js добавил импорт осбранного файла. Перед эти добавил импорт котлин.js. Не пашет, все равное не хочет находить котлин

Руслан
06.09.2017
08:35:52
Значит неправильно что-то прописал

Rikland
06.09.2017
08:37:17
А смысл? Если есть вещи которые уже генерят классы?
Ну например, какая вещь тебе из схемы сделает protobuf?

Lev
06.09.2017
08:37:46
Ну например, какая вещь тебе из схемы сделает protobuf?
что значит "из схемы"? Что за схема?

Я думаю, оно может по классу сгенерить прото-файл и обратно

Google
Rikland
06.09.2017
08:38:42
что значит "из схемы"? Что за схема?
Вот у тебя есть xsd в нём описаны данные которые бегают по сети.

Lev
06.09.2017
08:39:52
.... нет у меня xsd еще никакого. У меня есть простые классы пакетов. На яве/котлине.

Rikland
06.09.2017
08:45:33
У тебя есть чуваки которые лабают на го. И кладут с большой колокольни на Java и Kotlin. Как ты им будешь рассказывать, что куда принимать и передавать?

Есть вариант дать им proto файлы.

Если тебе нужно работать с Kotlin в браузере, тогда генеришь интерфейсы. Если это jvm сторона, допустим rest, генеришь классы, которые можно в json сериализовать. Если вебсокеты, тут выбираешь то физическое представление что тебе нужно(trift/protobuf) или json

Если вторая сторона на диковинном языке написана. Или вручаешь xsd схему и пусть сами развлекаются или что-то ещё. В конце концов, можно написать вьюшку, которая будет показывать эту схему в графическом представлении (:

Может я где-то не прав? ?

Lev
06.09.2017
09:32:54
Может я где-то не прав? ?
ну так я дам другой стороне протофайлы

чтобы они по ним восстановили классы, но только ни их ЯП.

И это как я понимаю будет сделано утилитой а не ручками

упоролся я с этим js уже

Yuri
06.09.2017
12:14:51
Ребят всем привет, никто не знает почему файлы котлина не попадает в aar когда библиотеку через грэдл с репозитория тянешь? если локально добавлять то всё нормально

может процесс сборки и линковки для джава и котлин файлов отличается или что-то такое

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