#ViewBinding #UnderTheHood
View Binding: Internals
Недавно представленный View Binding для упрощения работы с View из XML Layout, уже убивший Butter Knife, чем-то схож в Data Binding. Его авторы вообще сказали, что часть пользователей использовали Data Binding только для ссылок оттуда и возникла идея View Binding.
Как же
View Binding: Internals
Недавно представленный View Binding для упрощения работы с View из XML Layout, уже убивший Butter Knife, чем-то схож в Data Binding. Его авторы вообще сказали, что часть пользователей использовали Data Binding только для ссылок оттуда и возникла идея View Binding.
Как же
View Binding
работает под капотом? Об этом вы сможете узнать из статьиStyling Android
View Binding: Internals
In September 2019 Google released Android Studio 3.6 Canary 11 to the Canary channel. This had an interesting new addition: View Binding. In this short series we'll take a look at how it works, and w
#Dagger #UnderTheHood
Dagger Android — Behind the Scenes
Самый популярный фреймворк для DI на Android - Dagger 2. Для фан базы создатели этого DI реализовали специальное расширение Dagger - dagger-android. Суть его в том чтобы упростить доставку зависимостей в Android компоненты.
Стало ли это проще? Спорно. Чтобы все это работало надо еще написать кучу кода и добавить отдельный процессор аннотаций.
В статье разбирается как под капотом работает
Dagger Android — Behind the Scenes
Самый популярный фреймворк для DI на Android - Dagger 2. Для фан базы создатели этого DI реализовали специальное расширение Dagger - dagger-android. Суть его в том чтобы упростить доставку зависимостей в Android компоненты.
Стало ли это проще? Спорно. Чтобы все это работало надо еще написать кучу кода и добавить отдельный процессор аннотаций.
В статье разбирается как под капотом работает
dagger-android
и чего стоит его удобствоMedium
Dagger Android — Behind the Scenes
Understanding Dagger 2 itself is already a challenge for many. With Dagger Android, it becomes even more confusing how things works…
#UnderTheHood
Mastering the Android Touch System
Каждый день мы совершаем тысячи событий для системы, касаясь экрана смартфона. Знание особенностей работы этой системы поможет строить ваши собственные View эффективнее, а также понимать принципы работы для другого функционала связанного с обработкой касаний экрана.
Mastering the Android Touch System
Каждый день мы совершаем тысячи событий для системы, касаясь экрана смартфона. Знание особенностей работы этой системы поможет строить ваши собственные View эффективнее, а также понимать принципы работы для другого функционала связанного с обработкой касаний экрана.
Medium
Mastering the Android Touch System
Let’s explore the Touch Framework
#Podcast #Ask #Coroutines #UnderTheHood
8 января я, Кирилл Розов, автор канала Android Broadcast и Ильмир Усманов, разработчик компилятора Kotlin в JetBrains запишем подкаст на тему того, как обеспечивается работа Coroutine на уровне компилятора:
👉 Как работают Сoroutine под капотом
👉 Оптимизация кода компилятором
👉 Нужно ли разработчику запариваться как вызывать suspend функции определенным образом для более оптимального байт кода
👉 Как эффективнее вызывать suspend функции
👉 Coroutines в JVM/Native/JS
👉 Какие оптимизации ждут Coroutine в новом JVM Backend
👉 Дебаг Coroutine
Свои вопросы, на которые вам интересно услышать ответы, вы можете задать в Twitter комментарием на пост или мне в личку
8 января я, Кирилл Розов, автор канала Android Broadcast и Ильмир Усманов, разработчик компилятора Kotlin в JetBrains запишем подкаст на тему того, как обеспечивается работа Coroutine на уровне компилятора:
👉 Как работают Сoroutine под капотом
👉 Оптимизация кода компилятором
👉 Нужно ли разработчику запариваться как вызывать suspend функции определенным образом для более оптимального байт кода
👉 Как эффективнее вызывать suspend функции
👉 Coroutines в JVM/Native/JS
👉 Какие оптимизации ждут Coroutine в новом JVM Backend
👉 Дебаг Coroutine
Свои вопросы, на которые вам интересно услышать ответы, вы можете задать в Twitter комментарием на пост или мне в личку
#ViewModel #ArchitectureComponent #UnderTheHood
Android ViewModel. How it works
Android Architecture Components - довольно популярное решение на сегодня в Android разработке. Понимание механизмов работы его компонентов поможет эффективнее использовать его и подать идеи как реализовать другой функционал с использованием аналогичных механизмов.
В статье разбирается:
👉 ViewModelProvider
👉 ViewModelStore
👉 ViewModelStoreOwner
👉 Эволюция ViewModel: 2017, 2018, 2019
👉 Где хранится ViewModel чтобы переживать пересоздания
Android ViewModel. How it works
Android Architecture Components - довольно популярное решение на сегодня в Android разработке. Понимание механизмов работы его компонентов поможет эффективнее использовать его и подать идеи как реализовать другой функционал с использованием аналогичных механизмов.
В статье разбирается:
👉 ViewModelProvider
👉 ViewModelStore
👉 ViewModelStoreOwner
👉 Эволюция ViewModel: 2017, 2018, 2019
👉 Где хранится ViewModel чтобы переживать пересоздания
Activity
/Fragment
при смене конфигурацииMedium
Android ViewModel. How it works.
Hello everybody.
#Kotlin #Coroutines #UnderTheHood
Kotlin Vocabulary - Suspend functions
Kotlin Coroutines - то что делает громкий заявления об упрощение работы с асинхронными операциями и выдерживает множество запущенных операций.
На основе чего работает вся эта магия? Что происходит под капотом? Во что превращается функция с модификатором suspend, если в JVM нет такого понятия. Обо всем этом можно найти ответы в видео
Kotlin Vocabulary - Suspend functions
Kotlin Coroutines - то что делает громкий заявления об упрощение работы с асинхронными операциями и выдерживает множество запущенных операций.
На основе чего работает вся эта магия? Что происходит под капотом? Во что превращается функция с модификатором suspend, если в JVM нет такого понятия. Обо всем этом можно найти ответы в видео
YouTube
Suspend functions - Kotlin Vocabulary
Coroutines in Kotlin simplify asynchronous operations on Android. In this video, we go more in depth about why coroutines are important, how they work under the hood, how a coroutine can suspend without blocking threads, and much more!
#KotlinVocabulary…
#KotlinVocabulary…
#Kotlin #Coroutines #UnderTheHood
The suspend modifier — Under the hood
Текстовая версия выпущенного ранее ролика о том, как работает ключевое слово
The suspend modifier — Under the hood
Текстовая версия выпущенного ранее ролика о том, как работает ключевое слово
suspend
в Kotlin.Medium
The suspend modifier — under the hood
Kotlin Vocabulary: Coroutines
#Kotlin #KotlinVocabulary #UnderTheHood
Inline functions — under the hood
inline функции - это особенная функция, которая позволяет оптимизировать код на уровне компилятора, избавлять от создания ненужных лямбда выражений и вызова функций.
В статье разбирается как работает ключевое слово inline в Kotlin.
Когда лучше его использовать:
👉 Для функций, которые имеют функции в качестве параметра
👉 Для небольших функций, чтобы конечный байт код не разрастался
Inline functions — under the hood
inline функции - это особенная функция, которая позволяет оптимизировать код на уровне компилятора, избавлять от создания ненужных лямбда выражений и вызова функций.
В статье разбирается как работает ключевое слово inline в Kotlin.
Когда лучше его использовать:
👉 Для функций, которые имеют функции в качестве параметра
👉 Для небольших функций, чтобы конечный байт код не разрастался
Medium
Inline functions — under the hood
Kotlin Vocabulary
#Coroutines #UnderTheHood
Coroutines: Suspending State Machines
8 минут на чтение
В статье разбирает как код с использованием suspend функций и Coroutine превращается в рабочий код на конечной платформе. Разбираются такие понятия как:
👉 suspension points
👉 Continuation Passing Style (CPS)
👉 state machine
Все довольно лаконично, просто и с визуализацией, поэтому сложить высокоуровневое представление получается достаточно хорошо.
Coroutines: Suspending State Machines
8 минут на чтение
В статье разбирает как код с использованием suspend функций и Coroutine превращается в рабочий код на конечной платформе. Разбираются такие понятия как:
👉 suspension points
👉 Continuation Passing Style (CPS)
👉 state machine
Все довольно лаконично, просто и с визуализацией, поэтому сложить высокоуровневое представление получается достаточно хорошо.
Medium
Coroutines: Suspending State Machines
Coroutines make our asynchronous code look sequential. Coroutines help us escape the callback hell. Coroutines save us from the complex…
#UnderTheHood
Android Vitals - Diving into cold start waters
В статье разбирается как происходит холодный (когда процесса приложения не существует) запуск приложения Android. Хардкорненько и на любителя. Ставьте свои лайки и дизлайки чтобы понять интересно вам или нет
Android Vitals - Diving into cold start waters
В статье разбирается как происходит холодный (когда процесса приложения не существует) запуск приложения Android. Хардкорненько и на любителя. Ставьте свои лайки и дизлайки чтобы понять интересно вам или нет
DEV Community
Android Vitals - Diving into cold start waters 🥶
Header image: A Song of Ice and Fire by Romain Guy. This blog series is focused on stability and p...
#Android #UnderTheHood
Android Vitals - Rising to the first drawn surface
Продолжение статей о запуске Android приложения. В новой части рассказывается про запуск первой Activity приложения при холодном старте
Android Vitals - Rising to the first drawn surface
Продолжение статей о запуске Android приложения. В новой части рассказывается про запуск первой Activity приложения при холодном старте
DEV Community
Android Vitals - Rising to the first drawn surface 🤽♂️
Header image: Flying in the Light by Romain Guy. This blog series is focused on stability and perf...
#JetpackCompose #UnderTheHood
Understanding Jetpack Compose — Part 1 of 2
Совсем недавно была анонсирована альфа Jetpack Compose. Вместе с этим нам стало доступно множество обучающих материалов и документации.
В статье разбираются базовые принципы декларативного подхода в UI и чем он отличается привычному Android разработчику иерархии View + XML
Understanding Jetpack Compose — Part 1 of 2
Совсем недавно была анонсирована альфа Jetpack Compose. Вместе с этим нам стало доступно множество обучающих материалов и документации.
В статье разбираются базовые принципы декларативного подхода в UI и чем он отличается привычному Android разработчику иерархии View + XML
Medium
Understanding Jetpack Compose — part 1 of 2
Better UI building with Compose
#JetpackCompose #UnderTheHood
Under the hood of Jetpack Compose — part 2 of 2
Продолжение раскрытие деталей реализации Jetpack Compose. Во второй части вы найдете ответы на вопросы:
👉 Что значит аннотация
👉 В чем похожи
👉 Как строится UI в Jetpack Compose
👉 Что такое
👉 Как устроена работа с входными параметрами и обновлением UI в Jetpack Compose
Важно: чтобы работать с Jetpack Compose вам не нужно понять детали этой статьи
Under the hood of Jetpack Compose — part 2 of 2
Продолжение раскрытие деталей реализации Jetpack Compose. Во второй части вы найдете ответы на вопросы:
👉 Что значит аннотация
@Composable
👉 В чем похожи
@Composable
и suspend
из Kotlin👉 Как строится UI в Jetpack Compose
👉 Что такое
Composer
👉 Как устроена работа с входными параметрами и обновлением UI в Jetpack Compose
Важно: чтобы работать с Jetpack Compose вам не нужно понять детали этой статьи
Medium
Under the hood of Jetpack Compose — part 2 of 2
Under the hood of Compose
#Android #UnderTheHood
Бесшовные A/B-обновления в Android: как они устроены
Обновления Android на современных устройствах уже давно убрали длинную загрузку, потому что появился новый механизм A/B обновлений в Android 8.0. Как он устроен и позволяет ли уменьшить требуемое количество свободной памяти? Ответы найдете в статье
Бесшовные A/B-обновления в Android: как они устроены
Обновления Android на современных устройствах уже давно убрали длинную загрузку, потому что появился новый механизм A/B обновлений в Android 8.0. Как он устроен и позволяет ли уменьшить требуемое количество свободной памяти? Ответы найдете в статье
Хабр
Бесшовные A/B-обновления в Android: как они устроены
Всем привет. В SberDevices наша команда занимается разработкой различных железок и прошивок для них на базе AOSP. Начиная с Android 8 (у некоторых вендоров с 7.1) в системе появился новый механизм...
#Android #UnderTheHood
«Холодный» запуск Android-приложения
Разбор как запускается Android приложение после того как пользователь выбирается его в launcher-е.
Оригинальная статья здесь
«Холодный» запуск Android-приложения
Разбор как запускается Android приложение после того как пользователь выбирается его в launcher-е.
Оригинальная статья здесь
Хабр
«Холодный» запуск Android-приложения
Всем приветъ! Давно ничего не писал. Это будет серия постов о процессе «холодного» запуска Android приложения, с момента нажатия на иконку и до создания процесс...
#Android #UnderTheHood
Отрисовка первого кадра Android-приложения
Глубокое погружение в процесс загрузки-запуска Android-приложения. В статье разбирается что происходит в приложении, когда начальная Activity приложения запущена и система должна отрисовать первый кадр.
Отрисовка первого кадра Android-приложения
Глубокое погружение в процесс загрузки-запуска Android-приложения. В статье разбирается что происходит в приложении, когда начальная Activity приложения запущена и система должна отрисовать первый кадр.
Хабр
Отрисовка первого кадра Android-приложения
Всем приветЪ! Этот пост является продолжением поста про глубокое погружение в процесс загрузки-запуска Android-приложения. Сегодня мы пойдем чуть дальше и обсу...
#UnderTheHood
Как устроен билд APK файла внутри
Неплохой разбор с тем как запускается Android приложения из кода в APK и собирается все что есть в APK. Автор проходит по верхам, но вы встретите много знакомых терминов.
Как устроен билд APK файла внутри
Неплохой разбор с тем как запускается Android приложения из кода в APK и собирается все что есть в APK. Автор проходит по верхам, но вы встретите много знакомых терминов.
Хабр
Как устроен билд APK файла внутри
Процесс создания APK и компиляции кода Рассматриваемые темы Архитектура процессоров и необходимость для виртуальной машины Понимание Java виртуальной машины Компиляция исходного кода Виртуальная...
#Coroutines #UnderTheHood
Bridging the gap between coroutines, JVM threads, and concurrency problems
Хотите узнать как работают Coroutine на JVM? Как они связаны c Java потоками? Какую роль в этом выполняет CoroutineDispatcher? В статье найдете ответы простым языком с отсылкой в исходники
Bridging the gap between coroutines, JVM threads, and concurrency problems
Хотите узнать как работают Coroutine на JVM? Как они связаны c Java потоками? Какую роль в этом выполняет CoroutineDispatcher? В статье найдете ответы простым языком с отсылкой в исходники
#jetpack #underthehood
Рекомендую ознакомиться всем со статьей в которой рассказывается про то как ViewModel переживает уничтожение Activity/Fragment и сохраняет ваши данные. Полезно будет на собеседование и для создания собственных аналогичных решений.
Рекомендую ознакомиться всем со статьей в которой рассказывается про то как ViewModel переживает уничтожение Activity/Fragment и сохраняет ваши данные. Полезно будет на собеседование и для создания собственных аналогичных решений.
👍62👎16🔥2
Разбор(9м) как под капотом работает Dagger, Koin, Hilt и как написать свой простой DI
#di #underthehood
#di #underthehood
❤21👍9👎6🔥5