Один из очень дешевых способов начать экспериментировать с Kotlin Multiplatform – это перевести на него ваши unit тесты.
https://developer.squareup.com/blog/kotlin-multiplatform-shared-test-resources/
https://developer.squareup.com/blog/kotlin-multiplatform-shared-test-resources/
Square Corner Blog
Kotlin-Multiplatform Shared Test Resources
Verifying your code regardless of platform
Пополняемый плейлист из 15 мини-видео про разные аспекты работы Gradle.
https://youtube.com/playlist?list=PLWQK2ZdV4Yl2k2OmC_gsjDpdIBTN0qqkE
https://youtube.com/playlist?list=PLWQK2ZdV4Yl2k2OmC_gsjDpdIBTN0qqkE
YouTube
Understanding Gradle
Share your videos with friends, family, and the world
И раз уж мы тут говорим про плейлисты, вот вам еще один. Сергей Боиштян собрал в одном месте все самые важные доклады про CI в Android.
https://youtube.com/playlist?list=PL6cAevRXgOUWy1wk41yAq3Tu7o1AMCf-u
https://youtube.com/playlist?list=PL6cAevRXgOUWy1wk41yAq3Tu7o1AMCf-u
Роман Елизаров, project lead Kotlin, делится своим опытом использования языка для решения всех задач Advent of Code.
https://twitter.com/relizarov/status/1474714972261335044?s=21
https://twitter.com/relizarov/status/1474714972261335044?s=21
Twitter
Roman Elizarov
AdventOfCode 2021 is over. That's the first time I've participated in it every day on time. Solving all those puzzles was a lot of fun and I've learned a few things. Getting a spot on the top 100 global leaderboard is not easy. Here is a short thread of my…
Снится ли фронтендерам мобильная разработка?
Виктор Ильтимиров, разработчик мобильных приложений команды СберМаркет, рассказал на Хабре, стоит ли переходить с React на React Native.
Читайте, какие у React Native сильные стороны и почему перейти из web в мобильную разработку может быть неплохой идеей: https://habr.com/ru/company/sbermarket/blog/596581/
Виктор Ильтимиров, разработчик мобильных приложений команды СберМаркет, рассказал на Хабре, стоит ли переходить с React на React Native.
Читайте, какие у React Native сильные стороны и почему перейти из web в мобильную разработку может быть неплохой идеей: https://habr.com/ru/company/sbermarket/blog/596581/
Почитайте реплаи и цитирования этого твита – там буря обсуждений того, должны ли библиотеки зависеть от других библиотек.
https://twitter.com/gunnarmorling/status/1474053962034782212?s=21
https://twitter.com/gunnarmorling/status/1474053962034782212?s=21
Twitter
Gunnar Morling 🌍
I wish more library maintainers would follow a (close to) zero dependencies policy. Libs should never depend on stuff like Guava, kotlin-stdlib, or logger implementations. Yes, it means less comfort for yourself, but your users will be grateful.
Как вы относитесь к библиотекам, которые тянут за собой дополнительные зависимости?
Anonymous Poll
23%
Спокойно, никаких проблем не вижу
58%
Предпочитаю не использовать библиотеки с большим графом зависимостей
12%
Предпочитаю не использовать библиотеки даже с небольшим количеством дополнительных зависимостей
7%
Использую только ограниченный список библиотек без зависимостей
Насколько хорошо вы знакомы с парадигмой structured concurrency? Если не уверены в себе, то вот статья с теорией и хорошими примерами.
https://maxkim.eu/things-every-kotlin-developer-should-know-about-coroutines-part-3-structured-concurrency
https://maxkim.eu/things-every-kotlin-developer-should-know-about-coroutines-part-3-structured-concurrency
Art and science of writing good code
Things you should know about Coroutines. #3: Structured Concurrency.
Deep dive into the concept of structured concurrency in Kotlin Coroutines, discussing common pitfalls and best practices.
State descriptions – новая фича для тех, кто использует accessibility. Статья про то, в каких случаях их надо использовать и как подружить с Compose.
https://medium.com/google-developer-experts/state-descriptions-on-android-b2029283871f
https://medium.com/google-developer-experts/state-descriptions-on-android-b2029283871f
Medium
State Descriptions on Android
Learn what state descriptions are, why they’re important for accessibility and how you can use them on older versions of Android.
Встречались с тем, что качество звука в наушниках падает, когда эмулятор использует микрофон? Вот как с этим можно справиться.
https://blog.mmckenna.me/android-emulators-vs-bluetooth-headphones
https://blog.mmckenna.me/android-emulators-vs-bluetooth-headphones
Matt McKenna
Android Emulators vs Bluetooth Headphones
How to Fix Poor Audio Quality When Using Android Emulators
Подкаст с обсуждением проблем Jetpack Compose, и сразу же Reddit-тред с не менее интересными комментариями.
https://www.reddit.com/r/androiddev/comments/r0nbdo/talking_about_the_problems_of_jetpack_compose/
https://www.reddit.com/r/androiddev/comments/r0nbdo/talking_about_the_problems_of_jetpack_compose/
Reddit
From the androiddev community on Reddit: Talking about the problems of Jetpack Compose with Gabor Varadi
Explore this post and more from the androiddev community
Q&A с Николаем Иготти про Compose Multiplatform.
https://www.youtube.com/watch?v=jzoRWSG_y-Y
https://www.youtube.com/watch?v=jzoRWSG_y-Y
YouTube
Compose Multiplatform Q&A с Николаем Иготти, JetBrains
Обсуждаем будущее Compose Multiplatofrm и текущие сложности интеграции c Jetpack Compose, а также будущее фреймворка
Эксперт - Николай Иготти, руководитель команды Compose for Desktop в JetBrains
Инженер в компании JetBrains, участвовал в создании Kotlin/Native…
Эксперт - Николай Иготти, руководитель команды Compose for Desktop в JetBrains
Инженер в компании JetBrains, участвовал в создании Kotlin/Native…
Новогодние праздники – идеальное время, чтобы наконец-то познакомиться с KMM. Ловите твиттер-тред с отличной подборкой семплов, гайдов и советов по использованию технологии.
https://twitter.com/kotlin/status/1474309782169432067?s=21
https://twitter.com/kotlin/status/1474309782169432067?s=21
Twitter
Kotlin
Are you interested in cross-platform development with Kotlin #Multiplatform Mobile? Check out this thread with helpful content from the community: 🛠 Advanced samples 💡 Production tips and tricks 📦 A guide on how to make your Kotlin JVM codebase multiplatform…
Твиттер-тред с советами по измерению скорости навигации в приложении от инженера из Square.
https://twitter.com/piwai/status/1462492869160103938?s=21
https://twitter.com/piwai/status/1462492869160103938?s=21
Twitter
Py ⚔
I've learnt a few interesting things about monitoring perf for mobile app from production, more specifically navigation latency. Let's do a quick thread: 👇🧵 #AndroidDev
Тред на Reddit с обсуждением того, есть ли преимущества у Ktor перед Retrofit.
https://www.reddit.com/r/androiddev/comments/rqzdcz/are_you_using_ktor_instead_of_retrofit_in_your
https://www.reddit.com/r/androiddev/comments/rqzdcz/are_you_using_ktor_instead_of_retrofit_in_your
Reddit
r/androiddev on Reddit: Are you using ktor instead of retrofit in your company?
Posted by u/BraveEvidence - 21 votes and 38 comments
Видео с разбором того, как все языковые конструкции Kotlin выглядят в JVM-байткоде.
https://youtube.com/watch?v=6pWXre4gDyM
https://youtube.com/watch?v=6pWXre4gDyM
YouTube
Kotlin: Decompiled – How its features are represented on the JVM
Have you ever wondered how the Kotlin compiler pulls off all those nice features when having the JVM as the target platform? Some of Kotlin's features have no clear equivalent in Java/JVM bytecode which means that the compiler has to do a lot of heavy lifting…
Про использование WorkManager для запуска задач в отдельных процессах на примере библиотеки LeakCanary.
https://py.hashnode.dev/workmanager-multi-process-for-libraries
https://py.hashnode.dev/workmanager-multi-process-for-libraries
P-Y's blog
WorkManager multi-process for libraries
How Leakcanary leverages WorkManager multi-process
Учимся находить и исправлять блокирующие вызовы внутри корутин.
https://www.thedevtavern.com/blog/posts/why-are-my-coroutines-slow/
https://www.thedevtavern.com/blog/posts/why-are-my-coroutines-slow/
Thedevtavern
Why are my coroutines slow?
In this post, we will discover the consequences of making blocking calls inside coroutines, what strategies we can use to deal with them, and how to detect illegitimate blocking calls inside coroutines in practice using Blockhound!
Jetpack Compose позволяет довольно просто реализовать серверсайд-рендеринг на JSON’ах.
https://medium.com/mobile-app-development-publication/jetpack-compose-enables-json-defined-view-layout-b1f8a0d5df8c
https://medium.com/mobile-app-development-publication/jetpack-compose-enables-json-defined-view-layout-b1f8a0d5df8c
Medium
Jetpack Compose Enables JSON Defined View Layout
Making a more dynamic layout from the server payload
Финальная часть шикарной серии статей про работу с Bluetooth LE APIs.
https://www.hellsoft.se/bluetooth-le-for-modern-android-development-part-3/
https://www.hellsoft.se/bluetooth-le-for-modern-android-development-part-3/
Hellsoft
Bluetooth LE for modern Android Development - part 3
This is the final part of my new series on Bluetooth Low Energy for Android. It
took much longer to complete this post than I expected, much because I rewrote
parts of the code I show here when I found a better solution.
In my last two
[https://www.hellsoft.
took much longer to complete this post than I expected, much because I rewrote
parts of the code I show here when I found a better solution.
In my last two
[https://www.hellsoft.