
Artyom
07.10.2017
14:56:05
Ну в шарпах приватки с аксесорами начинаются с "_"

Igor
07.10.2017
14:56:14

Artyom
07.10.2017
14:56:24
Видел такое в котлете где-то

Alexander
07.10.2017
14:57:20

Google

Alexander
07.10.2017
14:57:43

DarkMentat
07.10.2017
14:59:16
где?
Для backing field только вроде
хоть и выглядит неконсистентно

Artyom
07.10.2017
15:01:32
https://kotlinlang.org/docs/reference/properties.html#backing-properties
Да
Backing field

Quantum Harmonizer
07.10.2017
16:26:36
Backing property. С точки зрения языка у backing field нет имени.

Vic
07.10.2017
20:38:42
Copy?

Quantum Harmonizer
07.10.2017
20:39:18
это разные классы
в один маппится прямо из БД, в другой — уже после разрешения связей

Vic
07.10.2017
20:40:05
А что смущает?

Quantum Harmonizer
07.10.2017
20:41:10
то, что объект проживает несколько микросекунд лишь для того, чтобы переродиться :)

Google

Vic
07.10.2017
20:43:47
ЭТО НОРМА во всякой функциональщине

Dibro
07.10.2017
20:43:54

Quantum Harmonizer
07.10.2017
20:44:40

Dibro
07.10.2017
20:44:56
ну ладно

Quantum Harmonizer
07.10.2017
20:44:57
не очень хочется в шаблоне писать ${pair.first....}
Кстати, кто пробовал DSL для HTML? Годно как шаблонизатор?
Кто-нибудь пробовал двинуться дальше и сделать DSL для CSS? :)

Sasha
07.10.2017
21:06:45

Quantum Harmonizer
07.10.2017
21:07:55
А CSS-классы можно будет скомпилировать так, что из имена будут состоять из одного-двух чаров)

Boris
07.10.2017
21:10:33
основа цсс-а это определение имен, а в котлине для оперделения имен в общем случае строки, да еще в грейдле придумали делегаты использовать
хотя может это и не страшно

Igor
07.10.2017
21:13:55
У тебя какая-то бета idea или котлина? У меня типы не пишет для exp-functions.

Quantum Harmonizer
07.10.2017
21:14:25

Igor
07.10.2017
21:14:52
Понятно, лучш буду типы ставить ?

Boris
07.10.2017
21:15:47

Quantum Harmonizer
07.10.2017
21:16:38

Sasha
07.10.2017
21:24:14

Quantum Harmonizer
07.10.2017
21:25:32

Boris
07.10.2017
21:30:19

Google

Quantum Harmonizer
07.10.2017
21:34:28

Хекс
08.10.2017
10:27:12
кто-то имел практику изучения Kotlin in action с хреновым инглишем? без замороченных языковых (англ) конструкций книга?

Anton
08.10.2017
10:29:11
она легко читается
и она есть на русском если все совсем плохо

Хекс
08.10.2017
10:30:16
да у меня только на английском, а на русском заказывать бомж

Anton
08.10.2017
10:33:21
ну короче легко читается энивей

Хекс
08.10.2017
10:33:40
Окай

Anton
08.10.2017
10:34:24
а кто как екстеншен функции группирует

Boris
08.10.2017
10:35:08
я бы посоветовал начать с просмотра документации и прохождения коанов, если хочется сократить количество чтения английского текста

Хекс
08.10.2017
10:36:00

Boris
08.10.2017
10:36:07
там всё довольно коротко и внятно описано и минимальное прктическое применение этого всего можно коанами получить

Хекс
08.10.2017
10:36:15

Anton
08.10.2017
10:36:28
ну тоесть как раньше в джаве утильные классы собирали
в старые добрые времена

Boris
08.10.2017
10:38:23
а кто как екстеншен функции группирует
для маленьких проектов у меня есть utils.kt где лежат все утилитные экстеншены, если эксеншены нужны для локального использования часто их прямо в классе приватными объявляю
если utils.kt разрастается, то выношу оттуда по смыслу, вот на днях вынес все методы для работы с Path например

Vic
08.10.2017
10:39:17
Субпакет util, там файлы-агрегаторы экстеншенов по смыслу

Boris
08.10.2017
10:39:45
если же делаешь какой-то дсл, то он сразу ложиться отдельным пакетом или как минимум файлом

Anton
08.10.2017
10:39:53
ну я тоже также делаю. значит все ок) спасибо

Boris
08.10.2017
10:42:28
вот кстати о Path было бы очень удобно если бы в стд-либе жвмовской были экстеншены для работы с ними, а то вот эти Files.(..) немного задалбывают

Google

Boris
08.10.2017
10:43:15
и всё равно пишешь эти экстеншены

Igor
08.10.2017
11:12:26
Надо написать скрипт (или плагин) который из произвольных JavaUtils классов - генерит Kotlin-Extensions

Vic
08.10.2017
11:13:29
Нет, надо джава интероп улучшить.
Чтобы все статик методы с первым аргументом нужного типа, можно было через дот нотацию вызвать
Это ж так и устроено в экстеншенах

Igor
08.10.2017
11:14:29
Да лан, тебе что мало ?
val path = Path(“”)
path.let(::delete)
.let(::deleteIfExists) …

Vic
08.10.2017
11:15:51
А передача аргументов?
Лет уже не подходит
А ведь если бы так сделали сразу, то не пришлось бы в стандартной библиотеке тонны экстеншенов дублировать из всяких StringUtils
В общем, недосмотр

Igor
08.10.2017
11:23:33
В общем, недосмотр
Ага и на любом double или int мне бы выплевывалось куча методов из java.lang.Math и еще кучи несвязанных либ - спасибо не надо

Vic
08.10.2017
11:24:56
Требуется более умное поведение подсказчика )
Сейчас же тоже есть проблема с засорением пространства экстеншенами
В скале это решается импортом только нужных имплиситов

Igor
08.10.2017
11:29:42
Ну так мы не скале ? и нет тут имплиситов, только ext-functions
Вообщем не надо тащить в язык, то что можно сделать по другому и так же удобно.

Vic
08.10.2017
11:31:21
Я только рассуждаю. Идея с плагином для генерации меня смущает тем, что придется перегенерять при обновлении версии либы
(утил класса)
Было бы неплохо найти серебряную пулю в подходе и запилить такое.

Alexander
08.10.2017
11:46:06
Исплиситы и на скале рекомендуется юзать только когда вариантов других нет :)

Vic
08.10.2017
11:48:02
Смотря какие

Google

Vic
08.10.2017
11:49:17
Всякие Rich-обертки, Ops - это в постоянном обиходе

Руслан
08.10.2017
12:55:27
Если все джавовые методы превратяться в экстеншены, да и в джаве не всегда первый параметр есть this
Можно конечно придумать специальный XML... Но зачем если можно просто написать в нужном месте свой экстеншен?

Vic
08.10.2017
13:07:52
import StringUtils.* as extensions
Типа такого

Хекс
08.10.2017
13:10:16
Много линуксоидов из котлинистов?