Size: a a a

Android Architecture

2020 October 09

КР

Кирилл Романенко... in Android Architecture
Quantum Harmonizer
упрощение 1: заменить класс на обджект
упрощение 2: убрать обджект, оставить функции
> убрать обжект, оставить функцию
Да ну, если функция чистая - да, если нет - лично я всегда объединяю в обжекты.
источник

QH

Quantum Harmonizer in Android Architecture
Кирилл Романенко
> убрать обжект, оставить функцию
Да ну, если функция чистая - да, если нет - лично я всегда объединяю в обжекты.
в принципе да, я недавно засунул грязь в глобальный обджект, получилось неплохо)
источник
2020 October 10

OP

Oleg Pchelkin in Android Architecture
Konstantin dmz9
ну погуглил, пишут что это нестабильное решение (посл. коммент)
Логично если вызвать Locale.setDefault("ru") получить в Locale.getDefault().getLanguage() "ru".
Если задача в том, чтобы получать и отображать системный язык, то не надо просто делать Locale.setDefault("ru"). Это не нестабильное решение, это разные задачи с разным ожидаемым результатом
источник

с#

саша сок #KotlinGang... in Android Architecture
Konstantin dmz9
ну погуглил, пишут что это нестабильное решение (посл. коммент)
ну я с помощью setDefault менял настройки языка для приложения через преференсы. так там всё стабильно
источник

IN

Ilya Nikolaev in Android Architecture
Quantum Harmonizer
> А чем тогда?
Я ничем не предлагал, у меня такой проблемы не существует. Есть
а) kotlin android extensions
б) ViewBinding
в) можно написать fun v(id: Int) = lazy(NONE) { findViewById(id) } — и анонимный класс будет один на всех, и без синхронизации. KotterKnife так и делает, ЕМНИП.

> Но не надо пропагандировать это как самый лучший путь
Надо. А то все обмазались кодом, не понимая, как он работает, и утонули в объектах.

> а то все тут утонут в этих оптимизациях
ой, как страшно. А можно примеры утонувших?
А то как работает kotlin extension прям ясно и понятно. )
источник

QH

Quantum Harmonizer in Android Architecture
Ilya Nikolaev
А то как работает kotlin extension прям ясно и понятно. )
Вы таки хотите поговорить об этом? :)
источник

IN

Ilya Nikolaev in Android Architecture
Не оч. Не люблю обсуждать религию.)
источник

QH

Quantum Harmonizer in Android Architecture
Ilya Nikolaev
Не оч. Не люблю обсуждать религию.)
о, пошли набросы
источник

QH

Quantum Harmonizer in Android Architecture
1: чувак, ты варишь суп в сковородке. Или жаришь, пока неясно
2: и чо? Мне нужно 100 мл супа, отвали и больше никогда не лезь со своими советами, а то мы тут погрязнем в немытых кастрюлях
1: а я ничего не говорил про кастрюли. Ты можешь использовать казан или котелок
3: Чё ты вообще пристал? Каждый варит суп, в чём считает нужным, это вопрос религии
источник

A

ABI in Android Architecture
Ребя , вы о чем?
источник

GR

Gor Rushanyan in Android Architecture
ABI
Ребя , вы о чем?
О супе же, или я потерял нить
источник

GR

Gor Rushanyan in Android Architecture
Ilya Nikolaev
А то как работает kotlin extension прям ясно и понятно. )
Ну тут как и везде есть подводные камни типа использования их в вьюхолдерах. Но все же получше выглядит чем лейзи. Да и вроде как там под капотом далеко не просто файндвьюбайайди на каждую вьюху
источник

GR

Gor Rushanyan in Android Architecture
Но надо бы глянуть
источник

с#

саша сок #KotlinGang... in Android Architecture
Gor Rushanyan
Ну тут как и везде есть подводные камни типа использования их в вьюхолдерах. Но все же получше выглядит чем лейзи. Да и вроде как там под капотом далеко не просто файндвьюбайайди на каждую вьюху
в чём проблема с вью холдерами? это ж просто проперти расширения к View
источник

GR

Gor Rushanyan in Android Architecture
саша сок #KotlinGang
в чём проблема с вью холдерами? это ж просто проперти расширения к View
Довольно легко можно сделать ошибку где работа будет неоптимальной. Нужно имено через вью обращаться.
источник

GR

Gor Rushanyan in Android Architecture
Не сильно прозрачная штука.
источник

с#

саша сок #KotlinGang... in Android Architecture
саша сок #KotlinGang
в чём проблема с вью холдерами? это ж просто проперти расширения к View
я вообще когда ещё писал на андроиде так делал:

class BaseHolder(val v: View)

... fun onBindViewHolder(holder: BaseHolder, ...) {
   holder.v.titleTextView.text = "..."
}
источник

с#

саша сок #KotlinGang... in Android Architecture
Gor Rushanyan
Не сильно прозрачная штука.
тот же findViewById
источник

GR

Gor Rushanyan in Android Architecture
саша сок #KotlinGang
тот же findViewById
Да, но нет.
источник

QH

Quantum Harmonizer in Android Architecture
саша сок #KotlinGang
тот же findViewById
угу, забыл LayoutContainer унаследовать, чтобы кэшировалось, и потерял весь смысл вьюхолдера
источник