Михаил
скорее всего в бинде вьюхолдера куча логики проброшена по отрисовке или у тебя много текста и тогда исспользую фоновую подготовку текста она уже доступна в либе поддержки
Михаил
ну или еще как вариант кастомная вью где ты ручками раскладываешь свои вьюхи внутри айтема и создаешь вьюху процедурно, значительно быстрее будет чем инфлейтить особенно если есть констрейты
Михаил
по сравнению с инфлейтом из xml айтем классического товара с изображением кнопками и описанием делается почти на 2 порядка быстрее
Mike
по сравнению с инфлейтом из xml айтем классического товара с изображением кнопками и описанием делается почти на 2 порядка быстрее
не на два порядка, а раза в четыре. Если бы и в сотню раз, это влияет только на скорость отрисовки первого кадра
Михаил
инфлейт происходит только в начале, и ты, кажется, путаешь обмер вьюхи с инфлейтом
нет нет есть кейсы когда у тебя вьюхи разные (именно тип) и переиспользуемость вьюх не очень работает и часто создаются новые вьюхи а не переисспользуются старые в этом случае реально начинает фризить рецайкл
Ontoshgo
100% в бинде собака зарыта
Mike
80нс против 6500нс примерно так по бенчмаркам было - если не соврал
80 нс — это время извлечения числа из оперативной памяти 🌚
Михаил
ну значит вру) давно это было
Ontoshgo
Импортни Анко и сделай через него лейаут, если за инфлейт боишься
Mike
нинад, у него должна быть очень базовая проблема
Михаил
BindViewHolder в студию
Ontoshgo
нинад, у него должна быть очень базовая проблема
таким раком он убедится что проблема не в инфлейте
Mike
А из регистров тогда сколько?
один такт, единицы нс
Михаил
таким раком он убедится что проблема не в инфлейте
ну как вариант еще что большой уровень вложенности в самом айтеме, кстати кто замерял производительность между констрейтом и вложенностью глубиной до 5 хотябы?
Ontoshgo
вложенность - вложенности рознь
Ontoshgo
если у тебя 4 фрейма друг в друге это одно
Ontoshgo
а если там ахинея с weight и прочая дичь - другое
Ontoshgo
чаще всего констреинты быстрее
Alexander
а если там ахинея с weight и прочая дичь - другое
можно несколько relative layout друг в друга накидать)
Михаил
https://android-developers.googleblog.com/2017/08/understanding-performance-benefits-of.html
спасибо за статейку норм) я понимаю что констрейты быстрее но видимо не на много и айтемы особенно сложные мы по прежнему кастомными вьюхами делаем - ИМХО производительнее на несколько порядков
Mike
можно несколько relative layout друг в друга накидать)
накидаешь три — будет восемь обмеров, четыре — шестнадцать, etc
Alexander
я знаю) потому и сказал это)
Anonymous
поясните дауну, в чем фетишь писать нативные приложения вместо како-нибудь джс фреймворка
Anonymous
кроссплатформенно и быстрая разработка
Mike
вопрос исчерпан, это чат о нативной разработке
Anna
in native we trust :)
Михаил
у js фреймворков все хорошо кроме узкого горлышка js моста, ну и плохо с тестами и не очень хорошо с много поточностью, а если смотреть в сторону кардова или ионик там вообще все ужасно так как все делается на вебвью с его ужасной однопоточной оптимизацией
Anonymous
вебвью не вариант, я чисто про нейтив фреймворки говорю
Anonymous
nativescript, react-native, flutter
Anonymous
etc
Nikita
кроссплатформенно и быстрая разработка
задайтесь вопросом чем вы платите за кроссплатформеность и быструю разработку.Предлагаю не продолжать эту тему, этот чат для нативщиков
Михаил
типа react Native - ну я выше отписал. Ну разумеется это мое сугубо личное мнение
Anatoly
Для быстрого прототипа и не сложного проекта годнота
Anonymous
со стороны бизнеса поддерживать 2 приложения для каждой платформы это сущий ад
Михаил
с нормальной архитектурой и описанием классов на этапе проектирования все норм получается, масштабируемо, поддерживаемо
Михаил
пишешь платформонезависимой код и радуешься жизни а джуны натягивают дизайн - все в плюсе
Ontoshgo
вас тралят, а вы ведетесь)
Mike
чем? я минусов не вижу, поэтому и спрашиваю
минус — поддерживать в итоге три кодовых базы. Вопрос закрыт, не продолжаем.
Михаил
размер апк например
оптимизация, отсутсвие тестов, хреновое управление потоками
Anonymous
2018 год вроде, людям как-то похуй качать 5мб или 15мб
Nikita
скиньте плиз чат Js ников, пойду потроллю их)))
Михаил
все холивары понеслись
Anonymous
извините за вопросы про нативную разработку
Anonymous
видимо чатом ошибся
Kanstantsin
со стороны бизнеса поддерживать 2 приложения для каждой платформы это сущий ад
зато если грамотно по гайдлайнам их делать, они буду заметно лучше чем кроссплатформенные, погляди лучшие приложения андройд, по юзабилити и дизайну, там кроссплатформенных нет, если просто сделать, абы работало, то ок
Anonymous
все крупные приложения что я реверсил написаны под джс
Kanstantsin
крупные != лучшие
Kanstantsin
ты не читаешь что я пишу, а просто стоишь на своем, ок
Anonymous
что ты понимаешь под лучшими?
Mike
можете не отвечать, ридонли
Kanstantsin
что ты понимаешь под лучшими?
пост, выше, я там всё описал, удачи с js
Михаил
да
Михаил
hi
Anatoly
Ontoshgo
+ хеш структуры базы
Anatoly
Дата биндинг....
Ontoshgo
как по твоему тогда работает deleteRealmIfMigrationNeeded()?
Anatoly
Kanstantsin
ох
Kanstantsin
я вообще adapter создавал кодом и его уже через binding вешал в ui
Kanstantsin
в recycler
Kanstantsin
по мне так понятнее
Ontoshgo
что должно в жизни такого произойти, чтоб пришлось data binding на проекте заюзать?
Kanstantsin
ну у нас есть проекты где юзается, я юзаю у себя в пет тоже
Anatoly
Тоже интересно
Kanstantsin
есть минусы