Советы по тестированию suspend функций
Разбор нескольких практик тестирования и вспомогательных функций из kotlinx.coroutines.test, которые упрощают проверку результатов работы корутин.
Разбор нескольких практик тестирования и вспомогательных функций из kotlinx.coroutines.test, которые упрощают проверку результатов работы корутин.
Arkadiusz Chmura
How to test intermediate steps in suspending functions | Arkadiusz Chmura
Testing the final result of a suspending function is easy, but what about verifying what happens inside it during the execution?
👍6
Multiplatform Paging
- Логика пагинации – идеальный кандидат для того, чтобы шарить между платформами.
- CashApp выпустили библиотеку Multiplatform Paging, полный аналог библиотеки из AndroidX, но с поддержкой мультиплатформы.
- Логика пагинации – идеальный кандидат для того, чтобы шарить между платформами.
- CashApp выпустили библиотеку Multiplatform Paging, полный аналог библиотеки из AndroidX, но с поддержкой мультиплатформы.
Cash App Code Blog
Announcing Multiplatform Paging
Multiplatform Paging is a library that packages AndroidX Paging for Kotlin/Multiplatform. It’s built to be a drop-in-replacement for AndroidX Paging, so extracting out shared pagination logic couldn’t be easier.
🔥12
Отчет с анализом 2.9 миллионов приложений из Play Store
- Ежегодный рост количества приложений уменьшился, пик был в 2019 году. То же и с ростом количества разработчиков.
- Категории-лидеры по количеству инсталлов: Tools, Communication, Productivity, Entertainment, Video Players.
- Только у 1% приложений больше миллиона инсталлов, причем только у 61% из них рейтинг выше 4.
- В среднем в 40% приложений есть реклама.
- Ежегодный рост количества приложений уменьшился, пик был в 2019 году. То же и с ростом количества разработчиков.
- Категории-лидеры по количеству инсталлов: Tools, Communication, Productivity, Entertainment, Video Players.
- Только у 1% приложений больше миллиона инсталлов, причем только у 61% из них рейтинг выше 4.
- В среднем в 40% приложений есть реклама.
🔥3
Релиз Koin Android 3.3.0
koin-android и koin-android-compose обновились до версии 3.3.0. Основной фокус – обновление ViewModel API.
koin-android и koin-android-compose обновились до версии 3.3.0. Основной фокус – обновление ViewModel API.
👍6
Различия .collect() и .launchIn() в Kotlin Flows
В статье разбираются различия между двумя основными способами сбора результатов работы Flow. Если кратко, то для большинства случаев рекомендуется .launchIn(), так как логика работы .collect() менее очевидна.
В статье разбираются различия между двумя основными способами сбора результатов работы Flow. Если кратко, то для большинства случаев рекомендуется .launchIn(), так как логика работы .collect() менее очевидна.
👎10👍4💩2
Расскажите, чего вам не хватает в роадмапе Kotlin
В команде Kotlin только что закончилось полугодовое планирование, и я готовлю обновление для публичного роадмапа. Расскажите в комментариях, какой информации вам в нем не хватает и как, на ваш взгляд, его можно было бы улучшить!
В команде Kotlin только что закончилось полугодовое планирование, и я готовлю обновление для публичного роадмапа. Расскажите в комментариях, какой информации вам в нем не хватает и как, на ваш взгляд, его можно было бы улучшить!
🔥5👎1👌1
Гайд по разработке библиотек
Большой набор рекомендаций по всем фазам жизненного цикла библиотеки: дизайну, разработке, релизу и поддержке. Вот некоторые из них:
👀 Используйте режим Explicit API для того, чтобы контролировать видимость ваших функций пользователям библиотеки.
✅ Binary Compatibility Validator позволяет следить за обратной совместимостью.
🌠 Настройте работу с ресурсами, добавив им префиксы с именем библиотеки и отключив транзитивность для R class.
Большой набор рекомендаций по всем фазам жизненного цикла библиотеки: дизайну, разработке, релизу и поддержке. Вот некоторые из них:
👀 Используйте режим Explicit API для того, чтобы контролировать видимость ваших функций пользователям библиотеки.
✅ Binary Compatibility Validator позволяет следить за обратной совместимостью.
🌠 Настройте работу с ресурсами, добавив им префиксы с именем библиотеки и отключив транзитивность для R class.
👍7👀3
Внимательность к финансовым привычкам — новый чёрный. Формировать её клиентам Сбера помогают аналитические и рекомендательные сервисы в приложении банка.
Сейчас Сбер ищет Android-разработчиков для работы над такими сервисами.
Важно знать Java и Kotlin. Рассматривают соискателей с опытом разработки Android-приложений от 2 лет, со знанием SQL, паттернов проектирования, классических алгоритмов, структур данных, систем непрерывной интеграции; специалистов, знакомых с Ant, Maven, Gradle.
Оклад: до 320 000 ₽ + премия в конце года.
Есть возможность работать удалённо в Москве и выбрать подходящий для себя график. Сотрудник получает ДМС с первого дня, возможность оформить льготную страховку для близких и пониженную (на 4%) ставку по ипотеке.
Среди приятных бонусов — подписка на СберПрайм+ за 0 ₽ и бесплатное обучение в Виртуальной школе и Корпоративном университете Сбера.
Узнать больше о вакансии и откликнуться можно по ссылке.
Сейчас Сбер ищет Android-разработчиков для работы над такими сервисами.
Важно знать Java и Kotlin. Рассматривают соискателей с опытом разработки Android-приложений от 2 лет, со знанием SQL, паттернов проектирования, классических алгоритмов, структур данных, систем непрерывной интеграции; специалистов, знакомых с Ant, Maven, Gradle.
Оклад: до 320 000 ₽ + премия в конце года.
Есть возможность работать удалённо в Москве и выбрать подходящий для себя график. Сотрудник получает ДМС с первого дня, возможность оформить льготную страховку для близких и пониженную (на 4%) ставку по ипотеке.
Среди приятных бонусов — подписка на СберПрайм+ за 0 ₽ и бесплатное обучение в Виртуальной школе и Корпоративном университете Сбера.
Узнать больше о вакансии и откликнуться можно по ссылке.
💩32👍4👎1🥰1
Главные проблемы в Kotlin и как они будут решаться
- Основные боли: перфоманс IDE и сборки, сложность настройки билда.
- Со стороны IDE перфоманса больше всего болят частые фризы и скорость индексации проекта.
- В последних версиях Kotlin есть много улучшений, направленных на решение этих проблем. Например, новая инкременталка в Gradle, или оптимизация индексов в IntelliJ.
- Основные боли: перфоманс IDE и сборки, сложность настройки билда.
- Со стороны IDE перфоманса больше всего болят частые фризы и скорость индексации проекта.
- В последних версиях Kotlin есть много улучшений, направленных на решение этих проблем. Например, новая инкременталка в Gradle, или оптимизация индексов в IntelliJ.
🔥6🥴1🤨1
Kotlin User Group на Кипре
Друзья попросили поделиться ссылкой на Кипрское Kotlin сообщество. Если вы сейчас живете на острове или планируете туда прилетать – обязательно вступайте, у ребят большие планы!
Друзья попросили поделиться ссылкой на Кипрское Kotlin сообщество. Если вы сейчас живете на острове или планируете туда прилетать – обязательно вступайте, у ребят большие планы!
Telegram
Cyprus Kotlin User Group
KUG Cyprus is for everyone who is interested in Kotlin. Doesn't matter whether you're a beginner or an expert, more into Android or Backend - we all want to learn more about Kotlin and have some fun together! Please use english.
👍9🤮2
Kotlin Android Extensions окончательно отключен
В Kotlin 1.8.0-Beta больше нельзя использовать Gradle плагин kotlin-android-extensions. Это ожидаемое изменение, про которое предупреждали уже год назад. Инструкция по переезду есть тут.
В Kotlin 1.8.0-Beta больше нельзя использовать Gradle плагин kotlin-android-extensions. Это ожидаемое изменение, про которое предупреждали уже год назад. Инструкция по переезду есть тут.
👍10
Релиз LeakCanary 2.10
- Экспорт дампа в базу Neo4j, которую сразу можно открыть в удобном браузере.
- Добавлена возможность мьютить уведомления от библиотеки, чтобы они не мешали тестировщикам внутренних сборок.
- Экспорт дампа в базу Neo4j, которую сразу можно открыть в удобном браузере.
- Добавлена возможность мьютить уведомления от библиотеки, чтобы они не мешали тестировщикам внутренних сборок.
🔥14
Серия статей про RenderEffect
- RenderEffect – это API, который позволяет удобным образом взаимодействовать с кастомными и готовыми шейдерами и применять их к View.
- В серии статей по мотивам своего выступления на Android Dev Summit, Chet Haase рассказывает про Blur RenderEffect и про Android Graphics Shading Language.
- RenderEffect – это API, который позволяет удобным образом взаимодействовать с кастомными и готовыми шейдерами и применять их к View.
- В серии статей по мотивам своего выступления на Android Dev Summit, Chet Haase рассказывает про Blur RenderEffect и про Android Graphics Shading Language.
Medium
Blurring the Lines
Android RenderEffects #1: the blur effect
👍2
Обновилась документация по управлению памятью
Google обновили документацию про то, как в Android организован memory management. Из интересного – рекомендации по тестированию работы приложений в условиях ограниченной памяти, в том числе с помощью использования Stressful Application Test.
Google обновили документацию про то, как в Android организован memory management. Из интересного – рекомендации по тестированию работы приложений в условиях ограниченной памяти, в том числе с помощью использования Stressful Application Test.
🔥11