@kotlin_lang

Страница 63 из 982
Sergey
02.03.2017
13:58:03
https://t.me/scala_ru

Руслан
02.03.2017
14:11:33
как все печально там)

Стас
02.03.2017
14:32:47
Кто скажет: зачем в старом джава-коде (читаю Fowler'a) используется нижнее подёркивание перед именами переменных? int basePrice = _quantity * _itemPrice

Я так понимаю, что это какой-то аттавизм...

Google
Sergey
02.03.2017
14:36:09
раньше так приватные поля помечали)

Aliaksei
02.03.2017
14:53:47
Ну кое где так и делают

я например раньше логгер так обозначал

_logger

Sergey
02.03.2017
14:54:07
зачем?

Aliaksei
02.03.2017
14:54:37
что бы визуально видеть что это интернал незначительное поле

Sergey
02.03.2017
14:55:40
ну такое)

Стас
02.03.2017
16:18:28
А кто кипер данного чата? Я за ориджинал значок Котлина! Этот чайник-проектный!

K sign K – 11 ??????? 65% Potter – 6 ???? 35% ? 17 people voted so far.

Руслан
02.03.2017
16:27:41
Демократию тут устроили)

Quantum Harmonizer
02.03.2017
16:27:43
Он Kettle или Teapot, — Potter — гончар ;)

Руслан
02.03.2017
16:28:11
Что, серьёзно чайник не нравится? :(

guga
02.03.2017
16:28:20
нет, оставте чайник

Google
guga
02.03.2017
16:28:34
слишком хипстреская K

перепутаю с каким-то чатом о каком-то js фреймворке

Стас
02.03.2017
16:33:34
Он Kettle или Teapot, — Potter — гончар ;)
Не спорю, но смысл от этого не меняется 8)

Написал как в голове было

Quantum Harmonizer
02.03.2017
16:34:15
Стас
02.03.2017
16:37:39
Короче, чайник- как ни крути не релизный вариант

Boris
02.03.2017
16:38:11
чятик: котлин для чайников, всё ок

то есть чайник для котлина

Стас
02.03.2017
16:38:47
Однако голосование, товарищ Борис!

8)))

Boris
02.03.2017
16:39:08
с каких пор демократия работает?

Стас
02.03.2017
16:39:42
Кто за то, чтобы гараж товарища Бориса снести? 8)

Да разумеется не работает

Sasha
02.03.2017
17:56:34
+ за чайник.)

Oleg
02.03.2017
19:07:00
чайник крутой!

Михаил
02.03.2017
20:29:28
Есть чатик по спрингу?

Quantum Harmonizer
02.03.2017
20:42:21
В Kotlin Slack есть канал. Может, и тут или в @javastart подскажут.

Михаил
02.03.2017
21:00:13
Тут есть те кто поднимал спринг сервер с вебсокетами?

Ну и выжил после этого

Quantum Harmonizer
02.03.2017
21:05:41
Я поднимал.

Google
Михаил
02.03.2017
21:07:13
Я поднимал.
Как можно тэстить что поднялось?)

Надо прогу чтоб просто устанавливать коннект, слать и принимть сообщение

Quantum Harmonizer
02.03.2017
21:08:03
Установить соединение)

Михаил
02.03.2017
21:08:30
Юзал плагины для браузера

Они не коннектятся

Хотя это вообще сэмпл спринга рабочий

С оф сайта

Quantum Harmonizer
02.03.2017
21:10:00
Напиши тривиальный клиент на жабасарипте.

Надо прогу чтоб просто устанавливать коннект, слать и принимть сообщение
Вот здесь есть простой клиент, можно стащить часть кода к себе на страницу. view-source:http://javanese.online/sandbox/sandbox.js

Михаил
02.03.2017
21:15:22
Спасибо

Roman
03.03.2017
11:37:35
может быть кто-то сталкивался с таким: класс на котлине + dagger2. есть проперти @Inject lateinit var interactor: BirthDateAndParentalConsentInteractor и код init { component.inject(this) }

но инжекция не происходит - позже падает с ошибкой, что в non-null проперти interactor - null value

Roman
03.03.2017
11:39:00
я подумал что дело может быть в том, что инжекция идет в блоке init. можно как-то ее засунуть в конструктор?

Max
03.03.2017
11:40:55
init вызывается с конструктором же

Roman
03.03.2017
11:41:18
init вызывается с конструктором же
то есть должно работать?

Max
03.03.2017
11:42:20
ну можешь конструктов в таком стиле сделать и проверить constructor() : super() { //тут делать инъекцию }

Sergey
03.03.2017
11:42:39
почему на дроиде так популярен dagger, а не скажем guice или spring ioc?

Anton ?
03.03.2017
11:43:12
Boris
03.03.2017
11:43:33
только инжекшн в конструктор, только хардкор

Max
03.03.2017
11:43:43
roboguice тоже как бе

Google
Sergey
03.03.2017
11:43:55
Даггер без reflection работает
это принципиально? или рефлекшен запрещен на дроиде?

Boris
03.03.2017
11:44:22
вообще не понимаю, зачем можно быть нужен другой тип инжекшена (если ты конечно не на андроиде пишешь)

Roman
03.03.2017
11:44:28
ну можешь конструктов в таком стиле сделать и проверить constructor() : super() { //тут делать инъекцию }
а если есть параметры у основного конструктора, то как это сделать? что-то я не пойму: ту же спецификацию с тем же параметром не сделать же

Max
03.03.2017
11:46:02
т.е. было class T(context: Context?) { } стало class T { constructor(context: Context?) { } }

но второй вариант идентичен class T(context: Context?) {init { } }

Admin
ERROR: S client not available

Roman
03.03.2017
11:49:53
кажется дело не в котлине, вернее не в том месте где я думал

даггер возвращает null в качестве объекта

возможно дело в том, что объект был сам переписан на котлин

Anton ?
03.03.2017
11:52:15
покажи код класса который инжектишь

у него конструктор без параметров?

Roman
03.03.2017
11:54:21
https://codeshare.io/2pq309

с параметром

Anton ?
03.03.2017
11:56:25
Посмотри дебаггером, даггер вообще этот объект создает?

Или попробуй для него метод-провайдер в модуле написать

ну и вообще для андроид-специфичных классов типо активити лучше внедрять зависимости в методе onCreate()

Google
Roman
03.03.2017
12:03:39
ну и я проверил, что дело не в месте внедрения, компонент просто возвращает null

Boris
03.03.2017
12:33:00
https://codeshare.io/2pq309
так и подмывает сделать делегат из var day: Int? = null set(value) { field = value dayObservable.onNext(value) }

Roman
03.03.2017
12:34:59
так и подмывает сделать делегат из var day: Int? = null set(value) { field = value dayObservable.onNext(value) }
о! я буду благодарен за любую критику =) котлин только изучаю. а что здесь даст делегат? переиспользование логики? типа пусть принимает обзервабл как параметр?

Quantum Harmonizer
03.03.2017
12:35:21
Даже есть Delegates.observable. :)

Boris
03.03.2017
12:36:40
ну я бы наверное экстеншн для dayObservable сделал вроде Observable.observableProperty или типа того и вызывал бы by dayObservable.observableProperty()

это сократит запись и избавит от необходимости вызывать onNext

только надо всегда помнить, что каждый делегат инстанцирует объект

тут не похоже, чтобы это играло, но бывает, что это роскошь

Roman
03.03.2017
12:43:26
спасибо

Boris
03.03.2017
12:44:25
там наверное не Observable будет, а какой-то Subject, но сути не меняет

Roman
03.03.2017
12:48:39
а значения свойств переданных в конструктор в качестве параметров в какой момент оказываются установленными? в init?

Boris
03.03.2017
12:49:21
внутри их будет уже видно

и в ините или в инициализации других пропертей

Roman
03.03.2017
12:51:04
я все пытаюсь понять природу NPE. выяснил, что дагер не виноват, я невнимательно проверил его в первый раз. а вот метод вызванный в конструкторе не видит значение параметра-свойства

Boris
03.03.2017
12:51:33
который метод которое значение?

в более сложных случаях например с наследованием там всё не так очевидно

Roman
03.03.2017
12:53:57
https://codeshare.io/2pq309

providePresenter вызывается в конструкторе и в нем interactor null

Boris
03.03.2017
12:55:32
и что в этом удивительного?

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