@android_ru

Страница 789 из 3205
Alexey
10.01.2017
12:34:08
@JFixby либу com.android.support:support-annotations:25.1.0 подключи или нужные аннотации из неё выдерни

J
10.01.2017
12:35:22
@JFixby либу com.android.support:support-annotations:25.1.0 подключи или нужные аннотации из неё выдерни
понятно извиняюсь за грубый вопрос - но почему я должен в кроссплатформный код добавлять какой-то com.android.support:support-annotations:25.1.0

особенно если есть стандратное решение - enum который без доп зависимостей будеит работать: - и на сервере - и на дестктопе - и на андройде - и на iOS

- и на HTML5

Google
J
10.01.2017
12:37:45
- и помоему ещё JavaCard

Михаил
10.01.2017
12:39:09
имхо когда пишешь под андроид о кроссплатформенности моно сразу забыть

Sergey
10.01.2017
12:39:39
риторический вопрос, если так не нравится платформа под которую пишешь, то зачем продолжаешь это делать?

Михаил
10.01.2017
12:40:49
ну хотя есть cordova, xamarin)

Igor
10.01.2017
12:41:32
Михаил
10.01.2017
12:41:37
но если пишешь с андроид сдк, то точно кроссплатфрменность - это неизвестное слово

Quantum Harmonizer
10.01.2017
12:42:49
понятно извиняюсь за грубый вопрос - но почему я должен в кроссплатформный код добавлять какой-то com.android.support:support-annotations:25.1.0
Кроссплатформенный код имеет смысл в соседнем, библиотечном модуле; код в модуле приложения кроссплатформанным быть не может.

Откуда на iOS или HTML5 возьмётся JVM?

Alexey
10.01.2017
12:43:15
@JFixby ну ты сам понимаешь, что если ты вдруг зачем-то затащил IntDef к себе в клоссплатформенный код, то заставить это всё "работать" - дело 3 минут

Daniil
10.01.2017
12:43:30
А можно плс для тупых, что там не так с enum на андройде?

Google
Quantum Harmonizer
10.01.2017
12:43:50
некоторый оверхед, лишний класс загрузить, со своими виртуальными методами

Igor
10.01.2017
12:44:12
А можно плс для тупых, что там не так с enum на андройде?
https://www.youtube.com/watch?v=Hzs6OBcvNQE тут доступно все объясняется

Daniil
10.01.2017
12:44:26
спс

Alexey
10.01.2017
12:45:28
@matrixd да ничего, можно использовать вполне. Гугл не рекомендует их, но в основном, в крупных библиотеках (при этом, сами его используют местами в SDK).

J
10.01.2017
12:48:07
@JFixby ну ты сам понимаешь, что если ты вдруг зачем-то затащил IntDef к себе в клоссплатформенный код, то заставить это всё "работать" - дело 3 минут
вот на этом видео лысый рассказывает, что enum это гремлины, потом он приводит аргументы, из которых правда следует, что гремлины - это разрабы андройда, но зрители не заметили подмены, дальше предлагается использовать platform-specific костыли типа IntDef, из чего становится понятно, что лысый - сам гремлин.

Alexey
10.01.2017
12:49:35
@JFixby если посмотришь гугловое видео с ним, то станет понятно, что его туда поставили про такие вещи рассказывать

@JFixby из 5 минут видео делать какие-то выводы нет смысла

J
10.01.2017
12:54:27
если пишешь под конкретную платформу надо считаться с ее особенностями, зачем хаять?
ну тоесть ты хочешь сказать: "да, андройд сделан через жопу, учитывайте особенности платформы и пишите говнокод, а потом мучайтесь с сопровождением"

J
10.01.2017
12:55:53
твои предложения? и почему сразу гавнокод?
не надо писать говнокод: используйте энумы

Ilya
10.01.2017
12:55:54
неделя лысого в чатике

Sergey
10.01.2017
12:56:03
их не запрещают использовать, а просто не рекомендуют

Quantum Harmonizer
10.01.2017
12:57:31
Вчера писал, повторюсь: enum и @IntDef — это два разных инструмента.

J
10.01.2017
12:58:47
Вчера писал, повторюсь: enum и @IntDef — это два разных инструмента.
кстати, а в дебаге значение @IntDef как выглядит? как "IMAGE_TYPE_ARGB" или "42"?

Quantum Harmonizer
10.01.2017
12:59:10
42, конечно, это же инт

Виталий
10.01.2017
12:59:43
42, конечно, это же инт
Ща опять за топор пойдёт говорить)

J
10.01.2017
13:00:04
придётся повторить

Google
Quantum Harmonizer
10.01.2017
13:00:18
Во, это как "топор херня, несите катану"

J
10.01.2017
13:00:18
ну ты дебажишь код, там в функцию передаётся аргумент imageType и например вместо энума это тупо инт и он равен 42. дальше ты смотришь в репозитории кто вместо энума сделал инт, выясняешь где он сейчас находится, и ,не теряя зря времени, берёшь топор и идёшь искать этого мудака...

надо уже вики сделать по теме

J
10.01.2017
13:03:32
по-моему ты преувеличиваешь размер проблемы
что-то такое кричат жертвы топора

по-моему ты преувеличиваешь размер проблемы
слабый аргумент против топора

Alexey
10.01.2017
13:05:52
так ты четверь кода андроида своим топором вынесешь

Igor
10.01.2017
13:06:39
Вы про разные вещи говорите)

Один про перфоманс, другой про потенциальные проблемы с дебагом по причине использования int вместо enum.

J
10.01.2017
13:07:48
кароче, уважайте труд коллег - пишите хорошо читаемый и удобно отлаживаемый код

Alexey
10.01.2017
13:08:15
чот даже странно, что android.graphics.Bitmap.Config - это enum )

Alexey
10.01.2017
13:09:11
Alexey
10.01.2017
13:09:17
читаю его по дороге домой

так за месяц - два может и прочту

Sergey
10.01.2017
13:09:36
чот даже странно, что android.graphics.Bitmap.Config - это enum )
View.visibility тоже когда-то был энумом

Alexey
10.01.2017
13:09:57
чот даже странно, что android.graphics.Bitmap.Config - это enum )
видимо у них руки не дошли ещё это отрефакторить

Igor
10.01.2017
13:10:08
кароче, уважайте труд коллег - пишите хорошо читаемый и удобно отлаживаемый код
Речь о перфомансе, что всегда в ущерб читаемости. Никто не запрещает использовать enum.

J
10.01.2017
13:10:18
Оо, Чистый код Роберта Мартина тут в помощь
Я же тебе его порекомендовал)

Alexey
10.01.2017
13:10:40
Я же тебе его порекомендовал)
а, точно, ну вот читаю, уже страниц 70-80 прочел

полезные вещи пишет

Google
Alexey
10.01.2017
13:11:24
дядя Боб, чья архитектура по андроиду пошла заслуживает моего уважения и времени на прочтение ?

Alexey
10.01.2017
13:13:41
@JFixby и, к слову, в том, что enum - это овер дохуя байтиков в байткоде, не только android виноват

Ilya
10.01.2017
13:16:16
А есть ли конфа по Dagger 2?

J
10.01.2017
13:16:56
@JFixby и, к слову, в том, что enum - это овер дохуя байтиков в байткоде, не только android виноват
- потратить лишние 600 байт, - или годы жизни на сопровождение говнокода?

Антон
10.01.2017
13:17:23
А есть ли конфа по Dagger 2?
Было бы неебическиъ

Alexey
10.01.2017
13:18:00
@JFixby андроид-проекты очень часто живут не особо долго, переписываются раз в 2 - 5- 10 лет

Igor
10.01.2017
13:23:41
Не интерпрайз же

Admin
ERROR: S client not available

Daniil
10.01.2017
13:23:45
Вообще я вот после таких обсуждений с каждым разом все больше и больше офигеваю. С одной стороны дройдоразрабочтики не могут уступить пару тройку байт, чтобы писать читаемый код. С другой стороны городят огород зависимостей (в плане либ), обмазываются лямбдами и анонимными классами. А еще помню в этой конфе прямо внутри приложения человек предлагал гонять сериализвоанные данные чтобы типо избавится от проблем с мультипоточным доступом к данным или что-то в таком ключе. А эту возьню про енами я не понимаю еще больше. Если я все правильно понял чувак на видео жаловался что енамы отожрут лишние байтики главным образом в исполняемом файле, а не при использовании енамов в рантайме. При этом в андройде очень много всякой всячины объявлено как static final String.

Иван
10.01.2017
13:29:22
По ролику акцент в память был в основном про то, что больше съедается при подгрузке исполняемого кода в RAM

Ну а что хотели. Энам это класс. Он никогда не будет числом. Но у него свои плюсы

Daniil
10.01.2017
13:30:06
алсо, использование json и остальных человеко-читаемых протоколов это тоже удар по производительности. Есть же бинарные протоколы. А есть еще круче - бинарные протоколы разработанные на коленке. Тем не менее тут чаще всего обсуждают как откуда-нибудь из вебни высосать тот или иной человекочитаемый формат и работать с ним дальше. И это правильный путь. Как человек столкнувшийся на работе с самописным бинарным протоколом обмена - говорю используйте ничтаемые данные только там где реально это необходимо.

По ролику акцент в память был в основном про то, что больше съедается при подгрузке исполняемого кода в RAM
Да. Т.е. даже не про накладные расходы при создании экземпляра енама на куче (или где там оно будет аллоцировано), а именно про размер dex или как оно там.

Quantum Harmonizer
10.01.2017
13:31:31
Не, про размер загруженного в оперативу класса.

Иван
10.01.2017
13:31:53
Ну ясно конечно что и dex подрастет

Quantum Harmonizer
10.01.2017
13:32:08
> городят огород зависимостей > обмазываются лямбдами и анонимными классами так это разные люди :)

> много всякой всячины объявлено как static final String от констант не уйти

Daniil
10.01.2017
13:33:20
ну их можно сделать зачастую int

Иван
10.01.2017
13:33:31
Вот для меня, пока нет нужды использовать возможности энама как класса, константы очень хороши

Google
Иван
10.01.2017
13:33:47
И только в крайнем случае энам

Daniil
10.01.2017
13:34:39
ну их можно сделать зачастую int
например если глянуть на интенты, если я все правильно понимаю, конечно

Иван
10.01.2017
13:35:15
Интенты да. А свои какие-то можно и в числовом формате

Для параноиков можно использовать byte

Daniil
10.01.2017
13:35:51
this

Yergali
10.01.2017
13:35:53
Всем привет

Иван
10.01.2017
13:36:07
this
Мем с руками и ученым?

Daniil
10.01.2017
13:36:08
просто чото не вяжется разговоры про оверхед в dex и такие вот решения

Иван
10.01.2017
13:36:09
))))

Daniil
10.01.2017
13:36:18
Nick Senchurin
10.01.2017
13:36:45
я походу заваливаю тест на знатока всея мемов =\

Yergali
10.01.2017
13:37:05
Пару слов о себе я джава программист недавно начал программировать под андроид

Nick Senchurin
10.01.2017
13:37:24
аа, да, знаем таких )

Иван
10.01.2017
13:37:58
Не юзаешь — пшел вон

Не про энумы, про РХ и даггер спроси

Ну

Страница 789 из 3205