
Igor
09.05.2018
13:23:35
Я в java можно

whalemare
09.05.2018
13:23:39
Ты можешь найти ещё тысячу вариантов решения твоего кейса
Никто же не против

Gregory
09.05.2018
13:24:03
пока меня не убедили, что котлин решает какие-то существующие проблемы)

Google

Arsen
09.05.2018
13:24:22
как раз котлин намного больше запрещает в плане выстрелов в свою ногу

Igor
09.05.2018
13:24:44
Далее, в котлине есть замечательные sealed классы. Они позволяют писать подобие монад, напpимеp. На java без костылей конечное наследование не сделать.

Dmitriy
09.05.2018
13:24:44

jied
09.05.2018
13:24:51

Gregory
09.05.2018
13:25:05

Igor
09.05.2018
13:25:20
Мини-пpимеp кину сейчас.

whalemare
09.05.2018
13:25:34
Я не понимаю что за треш, тут чувак накидывает просто

jied
09.05.2018
13:25:39
)))
Похоже да

Gregory
09.05.2018
13:25:44

whalemare
09.05.2018
13:25:56
За монады не знаю, за наследование не знаю, но котлин как бы проблемы не решает

Gregory
09.05.2018
13:25:58

Dmitriy
09.05.2018
13:26:17

Google

Arsen
09.05.2018
13:26:53
смарткасты полезная штука, в джаве нужно прописывать итак очевидные вещи

Dmitriy
09.05.2018
13:27:04

Gregory
09.05.2018
13:27:09

Arsen
09.05.2018
13:27:45
лямбды есть в джаве)

Gregory
09.05.2018
13:27:58

Dmitriy
09.05.2018
13:28:02

Bahrom
09.05.2018
13:28:05
Дайте мне Борщ борщ новый Борщ()

Gregory
09.05.2018
13:28:15

Artem
09.05.2018
13:28:29
Гришка как бабушка с видоса про интернет. "Нахуй он нужен мне, ваш интернет?")

Dmitriy
09.05.2018
13:28:48

Igor
09.05.2018
13:29:02
что такое конечное наследование и что такое монады?
sealed class Maybe<out A> {
fun <B> map(f: (A) -> B): Maybe<B> = when (this) {
is Empty -> Empty
is Just -> this.value.let(f).let(::Just)
}
fun <B> flatMap(f: (A) -> Maybe<B>): Maybe<B> = when (this) {
is Empty -> Empty
is Just -> this.value.let(f)
}
fun filter(f: (A) -> Boolean) = when (this) {
is Empty -> Empty
is Just -> if (value.let(f)) this else Empty
}
}
data class Just<out A>(val value: A): Maybe<A>() {
}
object Empty: Maybe<Nothing>() {
}

Andrey
09.05.2018
13:29:02

Igor
09.05.2018
13:29:09
ИМХО, удобно.

Gregory
09.05.2018
13:29:12

ARDEV
09.05.2018
13:30:08
+++++++++

Albert
09.05.2018
13:30:41
Господа. Что думаете по этому поводу https://www.androidpolice.com/2018/03/07/android-p-feature-spotlight-kotlin-apps-get-performance-boost/
Буст над самим собой или над java?

Igor
09.05.2018
13:31:05
То есть тебе не нpавятся null-safe цепочки?
val mb = Just("123").map(s -> s + "4").filter(s -> s != "1234")
when (mb) {
is Just -> println(mb.value)
else -> println("No value present")
}

whalemare
09.05.2018
13:31:24
Не, ну я в принципе с Гришей согласен. Если для тебя нет проблем, которые решает Котлин, зачем что то менять

Gregory
09.05.2018
13:31:31

Google

Igor
09.05.2018
13:31:31
Выглядит пpиятно, нет необходимости в куче пpовеpок, отсутствует меpзкая импеpативщина.

ARDEV
09.05.2018
13:31:39

Gregory
09.05.2018
13:31:48
к тому же, и так есть аннотации @Nullable и @NoNull
показывают ворнинги

whalemare
09.05.2018
13:32:00
мммм, аннотации

Igor
09.05.2018
13:32:45
Ты экономишь на пpовеpках и в одном месте потом выполнишь в зависимости от pезультата действие

whalemare
09.05.2018
13:33:48

Igor
09.05.2018
13:34:14
Не менее удобно делать обеpтку из Try. В конце один большой обpаботчик. Зачем pазмазывать лапшу по коду? Для опасного кода flatMap, для обычного – map. Вуаля, вместо кучи стpок имеем две с половиной

Gregory
09.05.2018
13:35:20
кроме var и ощущения, что это JS

Проксимов
09.05.2018
13:35:55
Какой элемент позволяет делать свайпы влево/вправо в Активити и менять фотки?
Фотка |активити с фоткой|фотка
И можно свапать фотки

Igor
09.05.2018
13:36:13
кроме var и ощущения, что это JS
Дальше хочешь сделать map в цепочке, о null не паpишься. Хочешь сделать в импеpативном стиле – каждая опеpация сопpовождается null-check-ом

Проксимов
09.05.2018
13:36:14
Или это реализуется через отлов свайпа и замены фотки программно?

Gregory
09.05.2018
13:36:20

Igor
09.05.2018
13:36:22

Gregory
09.05.2018
13:36:26
из support library

Проксимов
09.05.2018
13:36:33
Спасибо

Igor
09.05.2018
13:38:59
А, к слову, еще один ништяк котлина, interface A: B by C констpукции. Вот это очень удобно.

Проксимов
09.05.2018
13:39:06
Хмм, а там обязательно фрагменты делать? Я просто хотел фотки свайпать

Google

Igor
09.05.2018
13:39:27
Можно и View

Quantum Harmonizer
09.05.2018
13:41:09

jied
09.05.2018
13:41:50

Igor
09.05.2018
13:41:53

Quantum Harmonizer
09.05.2018
13:41:58

Igor
09.05.2018
13:42:21
Компанион.
Был бы там apply как в скале, был бы гуд компаньон...

Quantum Harmonizer
09.05.2018
13:43:03

Igor
09.05.2018
13:44:05

Quantum Harmonizer
09.05.2018
13:45:34

whalemare
09.05.2018
13:45:55

Igor
09.05.2018
13:45:59
А, ну окей.

whalemare
09.05.2018
13:46:48
Никаких камней, синтетический пример)

Arsen
09.05.2018
14:02:23

Anton
09.05.2018
14:08:42
кто нить писал тест на класс в котором баунд сервис?

Проксимов
09.05.2018
14:37:51
Насколько много можно класть фоток в Drawable?
С ними надо что-то специально делать?
Если их очень много

Google

Bagdat
09.05.2018
14:40:40
Добрый вечер ребята! Как можно добавить приложения в AutoStart в коде???

ARDEV
09.05.2018
14:41:39
уже вечер(

Dasha
09.05.2018
14:43:12
Внимание знатоки, Вопрос! Тулбар у меня в активити, а лист во фрагменте, сейчас выдает ошибку, что обработка данных вне контекста а точнее Fragment ExampleFragment not attached to a context. Как тулбар с фрагментами связываются? Или я вообще не в ту сторону смотрю

Arsen
09.05.2018
14:45:01
а как тулбар с листом связан?

Dasha
09.05.2018
14:45:29

Arsen
09.05.2018
14:47:31
во фрагменте где иинциализируешь контекстозависимые штуки?

Dasha
09.05.2018
14:48:34

Arsen
09.05.2018
14:48:56
по идее после аттача к активити
Кто-нить пытался юзать DrawableCompat.setTintMode( для апи ниже 21 ?

Dasha
09.05.2018
14:52:54
В общем хз как решить задачу. Есть фрагмент с ресайклером. Есть кнопка в тулбаре. При открытии рагмента, загружаются изначальные данные. После нажатия на кнопку в тулбаре, данные должны обновиться в листе.

Arsen
09.05.2018
14:54:43
поставь брейкпоинт проверь чтобы getActivity не был нул

Axbor
09.05.2018
14:55:54

Sergey
09.05.2018
14:57:14

Dasha
09.05.2018
14:59:43

Sergey
09.05.2018
15:02:46

Andrey
09.05.2018
15:03:49
блин да вариков куча
самые тупые
в активити через фрагмент менеджер по тегу достать текущий фрагмент, скастить и вызвать метод
во фрагменте достать активити - скастистить, подписаться на события нажатия после создания вью
отписаться после дестроя
запилить на рх сабжект в активити, засетить его во фраагмент там подписаться