
Dibro
02.10.2017
10:02:35
так что думаю лучше с заглавной буквы

Mi
02.10.2017
10:03:42
DTOs

whalemare
02.10.2017
10:05:40
Всем привет, начал писать на котлине, возник вопрос по стайл гайду. Какая конвенция для написания интерфейсов, дата классов, просто логически связанных небольших классов, в одном файле, или как в java, каждый класс в отдельном файле? Спасибо
Я каждый класс разделяю в свой файл, мне так понятнее и привычнее.
Названия папок, классов почти всегда в единственном числе, де то было объяснение подробное почему лучше делать так

Mi
02.10.2017
10:09:36
ну некоторые датаклассы в одну строчку немного так себе помещать в отдельный файл

Google

Руслан
02.10.2017
10:11:03
Файл с множеством классов/функций/интерфейсов нужно(на мой взгляд) рассматривать как пакет.
А с большой/маленкой буквы имхо не важно, я например все равно по именам файлов серч не делаю

Mi
02.10.2017
10:35:37

Daniel
02.10.2017
10:50:06
С точки зрения Java мы получаем отдельные классы в том же пакете, что и котлин, только функции верхнего уровня группируются в класс с названием .kt файла

Mi
02.10.2017
11:27:10
А если мы говорим о классах в одном файле?

Dibro
02.10.2017
11:28:25

Denis
02.10.2017
11:29:08
Хитрая пидрила спецсимволов натолкала в ник?

Dibro
02.10.2017
11:29:30
привет

Sergey
02.10.2017
11:29:37
я подобное только в скайпе видел

Mi
02.10.2017
11:30:08
Как там этот символ называется, обратная арабская запись или что-то такое

Denis
02.10.2017
11:30:50
Карать за такое надо -_-

Nikita
02.10.2017
21:52:45
Всем привет, ребят

Google

Nikita
02.10.2017
21:52:59
Нигде не могу найти документацию по init блокам в котлине.
Мне интересно - какова логика работы : сначал init блок и потом инициализация в теле класса или наоборот
Пример тут https://pastebin.com/BHdtAubx

Anton
02.10.2017
22:01:56
не
это не такие инит блоки как в джаве
они просто выполняются в теле каждого конструктора
ну или не в теле а после. ща

Mi
02.10.2017
22:03:22
Есть инит блок внутри companion object

Anton
02.10.2017
22:03:24
One thing, init is used for all constructors (in file order) so you can have multiple constructors (without a primary) that initialize core values and then don't have to worry about whether or not you actually invoked your shared init code.

? animufag ?
03.10.2017
01:52:24
тутуру
завтра мб норм сформулирую в слаке а пока что перед сном напишу сюда
запускаю в ui треде следующее:
launch(UI) {
val dateInfos = run(coroutineContext) {
List(daysInMonth) { n ->
dateInfoProvider.getDateInfo(startDate.plusDays(n))
}
}
dayCells = run(coroutineContext) { updateDayCell(dateInfos) }
onLoaded(this@MonthInfo)
}
где coroutineContext = newSingleThreadContext
на профайлере вижу что эти непростые операции вылезают в ui тред
нужно будет посмотреть может ниже кто-нибудь специально лезет в ui но пока что основная версия что я в этом куске кода не прав

Roman
03.10.2017
03:57:25

You
03.10.2017
05:39:07
Done
Для всех

Юсуф
03.10.2017
06:04:29
Здравствуйте, можете дать ссылку на группу по rxJava/rxAndroid?

Igor
03.10.2017
06:05:04
@reactivex

Марат
03.10.2017
07:00:02
Всем привет! Кто то использует kodein в android-проектах? Есть примеры использования в проекте android, но не в специфичных для него классах?

Igor
03.10.2017
07:18:32
Господа, лед тронулся - пропозал на тайпклассы в Kotlin https://github.com/Kotlin/KEEP/pull/87
Когда-нибудь сможем моноидам и монадками обмазываться feelsgood.jpeg
typeclass Monoid {
fun Self.append(b: Self): Self
fun empty(): Self
}
extension Int : Monoid {
fun Int.append(b: Int): Int = this + b
fun empty(): Int = 0
}

Quantum Harmonizer
03.10.2017
07:22:35

Google

Nikita
03.10.2017
07:24:29
По поводу инит блоков все просто оказалось.

Igor
03.10.2017
07:24:31

Nikita
03.10.2017
07:24:56
Что первее будет написано, то и будет первее исполняться

Quantum Harmonizer
03.10.2017
07:25:47

Alexander
03.10.2017
07:28:17

Konstantin
03.10.2017
07:28:31

Quantum Harmonizer
03.10.2017
07:28:40
Можно не спать
Пробовал, отстой.
Ещё, говорят, можно в чатах не сидеть.)

Kirill
03.10.2017
07:28:43
@hopeisaprison тебе вот это может быть полезно: https://kotlin.link/articles/An-in-depth-look-at-Kotlin%E2%80%99s-initializers.html

Artyom
03.10.2017
07:28:58
А на когда намечен релиз 1.2, кстати?

Kirill
03.10.2017
07:29:08
После котлинконфа

Alexander
03.10.2017
07:29:12

Konstantin
03.10.2017
07:29:20
Хотя, если смотреть с оопшной колокольни, то, насколько я понимаю, таймпклассы выглядят как реализация полиморфизма и наследования но уже постфактум.

Artyom
03.10.2017
07:30:31
Логично анонсировать 1.2 на котлинконфе. ?

Kirill
03.10.2017
07:31:38

Artyom
03.10.2017
07:32:11
опасненько

Alexander
03.10.2017
07:32:15

Artyom
03.10.2017
07:32:37
В 1.2 корутины уже ж должны выйти из экспериментала?

Kirill
03.10.2017
07:32:42
Нет.
Это точно нет
В 1.3

Google

Artyom
03.10.2017
07:32:53
Печально :с

Kirill
03.10.2017
07:33:10

Igor
03.10.2017
07:33:13
Пробовал, отстой.
Ещё, говорят, можно в чатах не сидеть.)
Время то есть, да и понимание тех же Higher Kinded Types (тоже предлагают добавить) полезно для “всестороннего развития”.
https://github.com/47deg/KEEP/blob/7494c84af180a00cd91e6bd0f86f3c7db0758757/proposals/type-classes.md#typeclasses-over-type-constructors

Sergey
03.10.2017
07:33:23
1.4+ говорят еще будут жесткие оптимизации компилятора, с инлайнами и блекджеком
може сериализацию допилят

Kirill
03.10.2017
07:33:33

Sergey
03.10.2017
07:33:33
и иммутабельные коллекции

Artyom
03.10.2017
07:33:48
На пет - да
Мы кт уже в продакшине юзаем
Опасненько с бетами

Kirill
03.10.2017
07:34:26
Есть много людей, которые используют корутины в продакшн )

Quantum Harmonizer
03.10.2017
07:34:41
использую EAP в проде