Открытое собеседование Android разработчика
Через полчаса пройдет эпичный собес Android разработчика с упором на знание кишков и перфоманса. Подключайтесь к трансляции!
Собеседующий: Антон Дудаков, ведущий AndroidDev Podcast
Собеседуемый: Артем Зиннатуллин, бывший Staff Software Engineer из Lyft и эксперт по билд-тулингу
Через полчаса пройдет эпичный собес Android разработчика с упором на знание кишков и перфоманса. Подключайтесь к трансляции!
Собеседующий: Антон Дудаков, ведущий AndroidDev Podcast
Собеседуемый: Артем Зиннатуллин, бывший Staff Software Engineer из Lyft и эксперт по билд-тулингу
YouTube
Публичное собеседование на позицию Android-разработчика
Приходите на новый сезон Podlodka Android Crew: Android под капотом. Билеты по ссылке ниже, по промокоду ABSTRACT скидка для зрителей этого стрима😉
https://bit.ly/droidcrew8-interview
В преддверии нового сезона Android Crew #8, которая будет посвящена тому…
https://bit.ly/droidcrew8-interview
В преддверии нового сезона Android Crew #8, которая будет посвящена тому…
Новая инкрементальная компиляция в Kotlin
В Kotlin 1.7.0 появилась поддержка нового механизма инкрементальной компиляции, который работает существенно лучше прежнего. Для разных сценариев бенчмарки показывают улучшения от 26 до 96%. В статье детально разбирается, как новая система работает под капотом.
В Kotlin 1.7.0 появилась поддержка нового механизма инкрементальной компиляции, который работает существенно лучше прежнего. Для разных сценариев бенчмарки показывают улучшения от 26 до 96%. В статье детально разбирается, как новая система работает под капотом.
Тинькофф ищет mobile-разработчиков, чтобы за три дня сделать им оффер 💡
6 августа пройдет Mobile Weekend Offer для iOS- и Android-разработчиков с опытом от 3 лет. Пройдите все этапы технического интервью за день. Если понравятся условия и задачи — Тинькофф сделает оффер в течение трех дней.
Успейте подать заявку до 3 августа: https://l.tinkoff.ru/weekend_offer_mobile
Работа в команде Тинькофф — это не только возможность стать частью экспертного комьюнити мобильных разработчиков, но и развивать флагманские продукты. Например, Мобильный Банк, Тинькофф Бизнес и другие проекты.
6 августа пройдет Mobile Weekend Offer для iOS- и Android-разработчиков с опытом от 3 лет. Пройдите все этапы технического интервью за день. Если понравятся условия и задачи — Тинькофф сделает оффер в течение трех дней.
Успейте подать заявку до 3 августа: https://l.tinkoff.ru/weekend_offer_mobile
Работа в команде Тинькофф — это не только возможность стать частью экспертного комьюнити мобильных разработчиков, но и развивать флагманские продукты. Например, Мобильный Банк, Тинькофф Бизнес и другие проекты.
🤔Kotlin Developers Survey
Команда Kotlin начинает проводить регулярные опросы про качество работы различных подсистем языка: компилятора, IDE, библиотек. Расскажите про все проблемы, с которыми вы сталкиваетесь – это сильно поможет команде на следующих планированичх!
Команда Kotlin начинает проводить регулярные опросы про качество работы различных подсистем языка: компилятора, IDE, библиотек. Расскажите про все проблемы, с которыми вы сталкиваетесь – это сильно поможет команде на следующих планированичх!
Jetbrains
Kotlin Developers Survey
Kotlin Developers Survey.
Кастомное подчеркивание текста на Compose
- Подчеркивание текста прямой и волнистой линией
- Анимированное подчеркивание
- Выделение слова в баббл
- Подчеркивание текста прямой и волнистой линией
- Анимированное подчеркивание
- Выделение слова в баббл
В понедельник уже стартуем новый сезон Podlodka Android Crew!🤖
Напомним, что тема сезона – "Android под капотом"! Будем разбираться с
⚡️Менеджментом памяти Java и сборкой мусора
⚡️Устройством AOSP и IPC
⚡️Компиляторными плагинами и KSP, а еще внутрянкой Kotlin Multiplatform Moblle
⚡️И как всегда Dagger, конечно же!
Купить билеты и посмотреть полное расписание можно на сайте. Ждем на борту!
Напомним, что тема сезона – "Android под капотом"! Будем разбираться с
⚡️Менеджментом памяти Java и сборкой мусора
⚡️Устройством AOSP и IPC
⚡️Компиляторными плагинами и KSP, а еще внутрянкой Kotlin Multiplatform Moblle
⚡️И как всегда Dagger, конечно же!
Купить билеты и посмотреть полное расписание можно на сайте. Ждем на борту!
podlodka.io
Онлайн-конференция Podlodka Android Crew, сезон #13
Недельное мероприятие от команды Podlodka: ежедневные интерактивные сессии в Zoom по актуальным проблемам Android-разработки, нон-стоп общение с экспертами и звёздами индустрии, закрытое профессиональное сообщество в Telegram.
Полезные советы для дебага
- Перепроверяйте то, что говорят другие, даже если они очень уверены в советах
- Пытайтесь воспроизвести баг в маленьких и простых семплах, а не только в вашем продакшн коде
- Учитесь правильно писать просьбы о помощи
- Если столкнулись с проблемой, откатитесь на версию, где ее не было, и начинайте постепенно менять код, приближая его к сломанному состоянию
- Перепроверяйте то, что говорят другие, даже если они очень уверены в советах
- Пытайтесь воспроизвести баг в маленьких и простых семплах, а не только в вашем продакшн коде
- Учитесь правильно писать просьбы о помощи
- Если столкнулись с проблемой, откатитесь на версию, где ее не было, и начинайте постепенно менять код, приближая его к сломанному состоянию
Jetpack Compose Accessibility: Semantics
- Почему в Compose есть два дерева – composition и semantics
- Из чего состоит семантическое дерево
- Какие семантические свойства выводятся сами, а какие надо задавать самостоятельно
- Почему в Compose есть два дерева – composition и semantics
- Из чего состоит семантическое дерево
- Какие семантические свойства выводятся сами, а какие надо задавать самостоятельно
Compose Image на стероидах
Коллекция Composable и различных хелперов, которые прокачивают работу с ImageBitmap: отображение, манипулирование, изменение масштаба, зум, обрезание.
Коллекция Composable и различных хелперов, которые прокачивают работу с ImageBitmap: отображение, манипулирование, изменение масштаба, зум, обрезание.
Создание своей дизайн-системы на Compose
Google предоставляет много готовых Compose компонентов, поддерживающих Material UI. Но их недостаточно, если у продукта есть свой дизайн-язык, и его требуется поддержать. По ссылке вы найдете запись, слайды и дополнительные ссылки отличного доклада с недавнего Droidcon.
Google предоставляет много готовых Compose компонентов, поддерживающих Material UI. Но их недостаточно, если у продукта есть свой дизайн-язык, и его требуется поддержать. По ссылке вы найдете запись, слайды и дополнительные ссылки отличного доклада с недавнего Droidcon.
Год в продакшне с КММ и 70% реюза кода
- Кейс компании с 24 разработчиками, 2.5 миллионом MAU, 70% переиспользования кода и 99.75% крешфри
- Хранение общего кода в отдельном репозитории
- Использование интерфейсов вместо expect/actual
- Работа с крешами и уменьшение их количества в Kotlin/Native коде
- Кейс компании с 24 разработчиками, 2.5 миллионом MAU, 70% переиспользования кода и 99.75% крешфри
- Хранение общего кода в отдельном репозитории
- Использование интерфейсов вместо expect/actual
- Работа с крешами и уменьшение их количества в Kotlin/Native коде
Навигация в мультимодульном приложении на диплинках
- Приложение без Compose, с фиче-модулями и Activity вместо фрагментов
- Реализация обработки диплинков и навигации в нужный модуль
- Приложение без Compose, с фиче-модулями и Activity вместо фрагментов
- Реализация обработки диплинков и навигации в нужный модуль
Подкаст про Proguard с его разработчиком
- Как Proguard работает под капотом
- Proguard vs R8
- Runtime оптимизации в Proguard
- Как Proguard работает под капотом
- Proguard vs R8
- Runtime оптимизации в Proguard
Обновленные рекомендации по использованию Compose в RecyclerView
Начиная с
Начиная с
RecyclerView 1.3.0-alpha02
и Compose UI 1.2.0-beta02
, Composables больше не уничтожаются при выходе за границы экрана. Вместо этого они сохраняются и переиспользуются. Благодаря такому подходу исчез большой перфоманс-оверхед из-за необходимости постоянно пересоздавать composables.DNS-over-HTTPS/3 включен в Android 11 и выше
Большинство сетевых соединений начинаются с запроса к DNS. Исторически сложилось, что эти запросы не шифровались. Начиная с Android 9, Google выкатил фичу DNS-over-TLS, которая закрывает эту проблему, но порождает другие:
- Если первый запрос к серверу резолвится долго, все последующие ждут результата этого резолва, из-за чего общая производительность падает.
- При переходе из сотовой сети в сеть, что происходит при движении довольно часто, соединение рвется и его нужно восстанавливать с нуля, что тоже влияет на перфоманс.
Google вот только что выкатили обновление для всех устройств, начиная с Android 11, с новой фичей – DNS-over-HTTP/3. Она решает все перечисленные проблемы, а в нестабильных сетях работает даже лучше, чем оригинальный DNS. Поддержка протокола уже есть у нескольких ключевых DNS сервисов – Cloudflare и Google DNS.
Короче говоря, если хотите улучшить производительность сети в вашем проекте, проверьте, что ваш DNS сервис поддерживает этот протокол.
Большинство сетевых соединений начинаются с запроса к DNS. Исторически сложилось, что эти запросы не шифровались. Начиная с Android 9, Google выкатил фичу DNS-over-TLS, которая закрывает эту проблему, но порождает другие:
- Если первый запрос к серверу резолвится долго, все последующие ждут результата этого резолва, из-за чего общая производительность падает.
- При переходе из сотовой сети в сеть, что происходит при движении довольно часто, соединение рвется и его нужно восстанавливать с нуля, что тоже влияет на перфоманс.
Google вот только что выкатили обновление для всех устройств, начиная с Android 11, с новой фичей – DNS-over-HTTP/3. Она решает все перечисленные проблемы, а в нестабильных сетях работает даже лучше, чем оригинальный DNS. Поддержка протокола уже есть у нескольких ключевых DNS сервисов – Cloudflare и Google DNS.
Короче говоря, если хотите улучшить производительность сети в вашем проекте, проверьте, что ваш DNS сервис поддерживает этот протокол.
Выпуск Подлодки про протоколы и сети
Если вы не очень шарите в сетях и протоколах, но хотели бы разобраться – мы сравнительно недавно записали выпуск Подлодки из двух частей, где на пальцах разобрали, как работают современные сети, из каких этапов состоит сетевой запрос, и в целом как работает интернет.
- Часть 1
- Часть 2
Если вы не очень шарите в сетях и протоколах, но хотели бы разобраться – мы сравнительно недавно записали выпуск Подлодки из двух частей, где на пальцах разобрали, как работают современные сети, из каких этапов состоит сетевой запрос, и в целом как работает интернет.
- Часть 1
- Часть 2
podlodka.io
Podlodka #239 – Сети, часть 1: Интернет
Замахнулись на необъятное и обсудили компьютерные сети! Одного выпуска для такой тему явно мало, поэтому пока мы сфокусировались на интернете, и подробно изучили приключения сигнала на пути от пользователя к целевому сервису. В гостях у нас Тёма Гавриченков…
Positional memoization in Jetpack Compose
Простое объяснение того, как Compose кеширует информацию о Composable в дереве элементов. Понимание механики поможет вам не совершать ошибок, из-за которых дерево будет пересчитываться чаще, чем действительно нужно.
А если вы захотите более подробного разбора, обязательно посмотрите старую статью от Leland Richardson, одного из авторов фреймворка.
Простое объяснение того, как Compose кеширует информацию о Composable в дереве элементов. Понимание механики поможет вам не совершать ошибок, из-за которых дерево будет пересчитываться чаще, чем действительно нужно.
А если вы захотите более подробного разбора, обязательно посмотрите старую статью от Leland Richardson, одного из авторов фреймворка.