
Dmitriy
20.06.2017
09:22:55
обычный день, ничего необычного

Quantum Harmonizer
20.06.2017
09:23:02
несите стикер с огнетушителем)

Denis
20.06.2017
09:24:20

Quantum Harmonizer
20.06.2017
09:24:26

Google

Konstantin
20.06.2017
09:24:34

Denis
20.06.2017
09:24:36
О_о

Quantum Harmonizer
20.06.2017
09:24:41

Konstantin
20.06.2017
09:24:56
Оно дает возможность изменять сам объект, но не даст ничего сделать со ссылкой на него

Dmitriy
20.06.2017
09:24:57
val == нет set

Konstantin
20.06.2017
09:25:32
Настоящую иммутабельность возможно завезут позже, т.к. за нее довольно много голосов, если мне память не изменяет

Konstantine
20.06.2017
09:25:32
Valерий

Ivan
20.06.2017
09:25:43
О_о
ну ты понял, везде есть геттеры и сеттеры, но если они тебе не нужны, придумывай валы, аннотации и консты. это называется инструменты не позволяющие стрельнуть себе в ногу)

Denis
20.06.2017
09:26:02
И один хуй смотреть сорцы на предмет "а хули оно так возвращает"

Konstantin
20.06.2017
09:26:14
Да блин, это естественное развитие идей.

Ivan
20.06.2017
09:26:18
подытожу, котлин отличная штука, но налабилити с геттерами это от лукавоого.

Quantum Harmonizer
20.06.2017
09:26:28

Google

Konstantin
20.06.2017
09:26:48
Чисто концептуально это нифига не геттер, так-то

Ivan
20.06.2017
09:26:49
вот просто полярные решения, сделать классы файнал и паблик по умолчанию и сделать геттеры с налабилити.

Quantum Harmonizer
20.06.2017
09:26:56

Denis
20.06.2017
09:27:07
public final увидел раз - все, оно будет одно и тоже записанное в него
А не гадать что "блят, тут другое вылезло"
Хватит гореть короч)

Quantum Harmonizer
20.06.2017
09:27:35

Denis
20.06.2017
09:27:55

Igor
20.06.2017
09:28:04

Denis
20.06.2017
09:28:27
Там можно не только ногу, но и голову отстрелить одной пулей

Igor
20.06.2017
09:29:38

Boris
20.06.2017
09:29:46

Quantum Harmonizer
20.06.2017
09:29:54

Konstantin
20.06.2017
09:29:55
Почему это?
Ну свойства как идея же это не про поля и геттеры-сеттеры. То есть, обычно оно реализуется через них, но концептуально, насколько я понимаю, это все же нечто другое

Quantum Harmonizer
20.06.2017
09:30:52

Konstantin
20.06.2017
09:32:53
При этом свойство может быть и без поля как такового

Quantum Harmonizer
20.06.2017
09:33:31
Конечно.

Konstantin
20.06.2017
09:38:00
То есть, если в контектсе java обычно есть некоторое поле с геттером/сеттером и есть еще какие-то методы именно на заполучение или запись данных, то в контексте свойств мы все это будем делать разными свойствами
Именно свойствами

Google

Konstantin
20.06.2017
09:38:11
А методы уже будут именно методами.

whalemare
20.06.2017
09:39:25
Надо Егора позвать сюда, он вам расскажет и за ООП и за геттеры

Konstantin
20.06.2017
09:40:05
Не, не надо. У нас тут промискуитет в плане идей и подходов:D

whalemare
20.06.2017
09:40:05
?

Quantum Harmonizer
20.06.2017
09:41:45
I hate it :)
нинада

Denis
20.06.2017
10:00:35
Кстати, на счет налабл переменных. В Swift есть аж 3 варианта
1) Налабл (как и в Котлине класс помечается знаком "?")
2) Не налабл (как и в Котлине класс ни чем не помечается)
3) В начале налл но присваивать можно только не налл значения. Работа с такой переменной идет как с не налабл (класс помечается знаком "!")
Иосники, конечно, все еще плюются на счет такого подхода, мол "Напридумавали всяких вопросиков и восклицательных! Нипанятна!". Но как по мне так очень удачное решение.

Михаил
20.06.2017
10:01:58

Konstantin
20.06.2017
10:04:33
Да, похоже на lateinit

Denis
20.06.2017
10:05:40
Похоже. Только lateinit не добавить к параметру метода
И как котлин поведет себя если я захочу проверить lateinit переменную на null значение?

Denis
20.06.2017
10:06:43

Quantum Harmonizer
20.06.2017
10:07:07

Denis
20.06.2017
10:10:55
А это как понимать?
Так и понимать)) Параметр какбы может быть null но скорее всего нет, поэтому можно не ставит каждый раз восклицательные знаки)

Quantum Harmonizer
20.06.2017
10:11:18

Denis
20.06.2017
10:16:11

Denis
20.06.2017
10:16:29
Обычно такими переменными пользуются для хранения ссылок на View. Так как они при создании ViewController еще не определены.

Quantum Harmonizer
20.06.2017
10:16:30

Google

Denis
20.06.2017
10:16:43

Quantum Harmonizer
20.06.2017
10:17:01
Похоже. Только lateinit не добавить к параметру метода

Михаил
20.06.2017
10:17:16
вы о чем вообще?

Quantum Harmonizer
20.06.2017
10:17:36
о какой-то штуке из свифта, которой страшно пользоваться)

Михаил
20.06.2017
10:18:01

Denis
20.06.2017
10:18:05
Ну это по сути вариант переменной как из обычной Java где при работе с ней не нужно каждый раз ставить !!

Quantum Harmonizer
20.06.2017
10:18:42
Кстати, на счет налабл переменных. В Swift есть аж 3 варианта
1) Налабл (как и в Котлине класс помечается знаком "?")
2) Не налабл (как и в Котлине класс ни чем не помечается)
3) В начале налл но присваивать можно только не налл значения. Работа с такой переменной идет как с не налабл (класс помечается знаком "!")
Иосники, конечно, все еще плюются на счет такого подхода, мол "Напридумавали всяких вопросиков и восклицательных! Нипанятна!". Но как по мне так очень удачное решение.

Admin
ERROR: S client not available

Quantum Harmonizer
20.06.2017
10:18:47
! из swift

Михаил
20.06.2017
10:19:16

Denis
20.06.2017
10:20:53
И еще момент. Когда вы работаете с классами Java параметры методов помечены как нулабл. А если в Swift работать с классами Objective-C то параметры методов помечены знаком !

Quantum Harmonizer
20.06.2017
10:21:57

Denis
20.06.2017
10:23:19
lateinit в параметрах - это образно. lateinit для параметров там нет)
Кстати. Меня мучает еще один вопрос. Почему два восклицательных?

Quantum Harmonizer
20.06.2017
10:24:16

Denis
20.06.2017
10:25:10
Когда обращают, восклицательный знак ставят перед выражением а не после него
!boolValue

Dibro
20.06.2017
10:26:15
ну два тип чтоб еще хуже смотрелось чем один

Google

Denis
20.06.2017
10:27:57
if (!!boolValue!!) ... ?

Igor
20.06.2017
10:28:00

Михаил
20.06.2017
10:36:30

Dmitriy
20.06.2017
10:55:38
действительно, можно же было 1 восклицательный знак )

Nikita
20.06.2017
12:23:53
напомните пожалуйста, как называется фича (1 слово перед название функцией вроде бы), которая позволяет объявить екстеншн метод, который может вызываться без точки, например 1 plus 2

Quantum Harmonizer
20.06.2017
12:24:10

Nikita
20.06.2017
12:24:34

Kylych
20.06.2017
13:18:56
Нубский вопрос, как Scope создается в котлине?
даггер

Михаил
20.06.2017
13:20:26
также
ток вместо @interface - annotation class

Руслан
20.06.2017
14:08:54
@catswillrise https://vimeo.com/221264980/b3ac7f9001

Vic
20.06.2017
14:09:21
?

Sasha
20.06.2017
14:38:18
народ, а кто юзает RxKotlin? Его как довесок надо тащить если у меня и джава код есть или rxjava можно выпилить?
ps. вопрос снят.)

Denis
20.06.2017
15:04:33
Посаны
А стримы котлина норм?
А то чет по бенчам - говнище какое-то

Руслан
20.06.2017
15:05:39
Пруфы или небыло

Lost
20.06.2017
15:06:19
что тут