Последовательное соединение кода — это ситуация, когда класс требует, чтобы его методы вызывались только в определенном порядке. В статье описывается к каким проблемам это может привести и как свести такие ситуации к минимуму.
https://proandroiddev.com/stop-crafting-your-time-bomb-39f2d26987e0
https://proandroiddev.com/stop-crafting-your-time-bomb-39f2d26987e0
Medium
Stop Crafting Your “Time Bomb”
A horrible design pattern we should get rid of. Period.
Большой набор советов от Redmadrobot по работе с Gradle для Android-разработчиков: Kotlin DSL или Groovy, зависимости в многомодульных проектах, исключение неиспользуемых вариантов и другие.
https://habr.com/ru/company/redmadrobot/blog/544630/
https://habr.com/ru/company/redmadrobot/blog/544630/
Хабр
Советы по работе с Gradle для Android-разработчиков
Всем привет! Я пишу приложения под Android, в мире которого система сборки Gradle является стандартом де-факто. Я решил поделиться некоторыми советами по работе с системой с теми, у кого нет чёткого...
Неожиданно и быстро прошёл этот “год на удаленке”. Кто-то успел выучить новый язык и не только в программировании, но и заговорить на испанском. Кто-то в совершенстве овладел навыками йоге в домашних условиях.
Вместе с этим команда Mail.ru Group решили собрать и поделиться с вами некоторыми релизами на мобильных устройствах, которые выпустили за 2020 год “на удаленке”
Читайте в статье, пишите в комментарии какие крупные мобильные релизы вам запомнились в прошлом году?
Вместе с этим команда Mail.ru Group решили собрать и поделиться с вами некоторыми релизами на мобильных устройствах, которые выпустили за 2020 год “на удаленке”
Читайте в статье, пишите в комментарии какие крупные мобильные релизы вам запомнились в прошлом году?
Хабр
Дайджест релизов мобильной разработки Mail.ru Group за время пандемии
В прошлом году мы дружно перешли на удалёнку и стали экспериментировать и приспосабливаться к новым условиям. Результаты нас порадовали, мы не сбавили частоту ре...
Используем FFmpeg на Android: сжатие и редактирование видео, работа с картинками и gif.
https://medium.com/simform-engineering/multimedia-operations-for-android-using-ffmpeg-78f1fb480a83
https://medium.com/simform-engineering/multimedia-operations-for-android-using-ffmpeg-78f1fb480a83
Medium
Multimedia Operations for Android using FFmpeg
FFmpeg is a free and open-source software project consisting of a large suite of libraries and programs for handling video, audio, and…
В Kotlin есть встроенный класс Result, который пока не очень удобно используем. Реализуем свой более удобный аналог. Казалось бы, при чем тут монады.
https://gtheocharis.medium.com/and-the-result-is-a-monad-cd773b9a2dfb
https://gtheocharis.medium.com/and-the-result-is-a-monad-cd773b9a2dfb
Medium
And the Result is a monad
Adding superpowers to a custom type
Сложно не согласиться, что чем больше проверок мы перекладываем на компилятор, тем лучше. Автор статьи подумал также и сделал тип NonEmptyList для явного обозначения непустых списков.
https://quickbirdstudios.com/blog/non-empty-lists-kotlin/
https://quickbirdstudios.com/blog/non-empty-lists-kotlin/
QuickBird Studios
Non-Empty Lists in Kotlin
No-one likes to open an empty box! We use non-empty lists and collections in Kotlin to avoid such unpleasant surprises by design.
Большой гайд по null безопасности в Kotlin. По большей степени, будет полезно новичкам.
https://typealias.com/start/kotlin-nulls/
https://typealias.com/start/kotlin-nulls/
Dave Leeds on Kotlin
Nulls and Null Safety
In Kotlin, null safety is a first-class concept. In this chapter, we'll learn all about nulls, including how to manage them with tools like smart casts, elvis operators, safe-call operators, and more.
Осталось всего несколько дней, чтобы проголосовать в ежегодном опросе про состояние отечественного рынка мобильной разработки. Поднажмите – пройдите сами, пошарьте своей команде, закиньте в чатики, в которых сидите. Больше ответов – круче общий обзор!
⏰ Время на прохождение – 3 минуты, ссылка – тут.
⏰ Время на прохождение – 3 минуты, ссылка – тут.
Google Docs
Исследование российских команд мобильной разработки, 2021
Ежегодный опрос про состояние отечественного рынка мобильной разработки. Когда отвечаете на вопросы, старайтесь учитывать впечатления, полученные за весь прошедший 2020 год.
Задать вопросы можно в Telegram: @etolstoy
Отчет за 2020: https://etolstoy.com/mobile…
Задать вопросы можно в Telegram: @etolstoy
Отчет за 2020: https://etolstoy.com/mobile…
При добавлении новой библиотеки в проект хочется быть уверенным в её корректном поведении. В статье приведен набор практик, которые позволят узнать библиотеку по-лучше: просмотр объеденненого манифеста, проверка зависимостей и оценка работы с пользовательскими данными.
https://medium.com/androiddevelopers/getting-to-know-the-behaviors-of-your-sdk-dependencies-f3dfed07a311
https://medium.com/androiddevelopers/getting-to-know-the-behaviors-of-your-sdk-dependencies-f3dfed07a311
Medium
Getting to know the behaviors of your SDK dependencies
You likely are using third-party SDKs or libraries in your app. After all, why build functionality from scratch if the building blocks are…
Ещё одна статья для начинающих, хотя возможно будет полезно и опытным разработчикам. На этот раз погружаемся в работу с коллекциями в Kotlin.
https://dev.to/kotlin/diving-into-kotlin-collections-587o
https://dev.to/kotlin/diving-into-kotlin-collections-587o
DEV Community
Diving into Kotlin collections
Kotlin's standard library provides awesome and versatile tools to manage groups of items. Let's take a closer look!
Экраны с формами — это одни из самых часто встречаемых компонентов мобильной разработки, наряду с экранами со списком элементов. Разбираемся как StateFlow может помочь нам в задаче валидации форм.
https://proandroiddev.com/new-form-validation-way-with-kotlin-flow-stateflow-633cc3f2d7cb
https://proandroiddev.com/new-form-validation-way-with-kotlin-flow-stateflow-633cc3f2d7cb
Medium
New Form Validation Way with Kotlin Flow — StateFlow
Hi everyone, in this article we will implement a form validation with Kotlin Flow and StateFlow.
Разработчики из Dropbox делятся своим опытом по противодействию утечкам памяти. В статье представлены частые примеры утечек, а также подходы по их поиску и устранению.
https://dropbox.tech/mobile/detecting-memory-leaks-in-android-applications
https://dropbox.tech/mobile/detecting-memory-leaks-in-android-applications
dropbox.tech
Detecting memory leaks in Android applications
19 апреля стартует новый сезон Podlodka Android Crew!
Конференция пройдет в формате двухнедельного интенсива. У каждой недели своя тема, темы этого сезона – “Многопоточность” и “Jetpack”.
🤯 Неделя “Многопоточность” говорит сама за себя. Разберемся, как она фундаментально работает, рассмотрим основные инструменты и ответим на вопрос, когда стоит выбрать RxJava, корутины или вообще остаться на чистых потоках. Бонус: публичное собеседование по многопоточности! После нашей конференции вам такие собесы будут не страшны 💪
🚀 На второй неделе погружаемся в Android Jetpack. Под этим названием скрывается множество библиотек и инструментов: Compose, Workmanager, Paging3, Navigation и не только. Мы узнаем, что там есть полезного, как они устроены под капотом, и как затащить их к себе в проект с максимальной пользой.
Помимо докладов в программе множество нескучных форматов: рулетки кейсов, батлы, лайв-кодинги и не только. Кроме того, вы получите доступ к записям всех сессий, чтобы потом в любой удобный момент можно было освежить знания!
Крутые спикеры, общение в слаке с другими участниками и полезные сессии – все это уже с 19 апреля! Примерное расписание уже на сайте, а билеты пока еще с early bird скидкой. Подключайтесь!
Конференция пройдет в формате двухнедельного интенсива. У каждой недели своя тема, темы этого сезона – “Многопоточность” и “Jetpack”.
🤯 Неделя “Многопоточность” говорит сама за себя. Разберемся, как она фундаментально работает, рассмотрим основные инструменты и ответим на вопрос, когда стоит выбрать RxJava, корутины или вообще остаться на чистых потоках. Бонус: публичное собеседование по многопоточности! После нашей конференции вам такие собесы будут не страшны 💪
🚀 На второй неделе погружаемся в Android Jetpack. Под этим названием скрывается множество библиотек и инструментов: Compose, Workmanager, Paging3, Navigation и не только. Мы узнаем, что там есть полезного, как они устроены под капотом, и как затащить их к себе в проект с максимальной пользой.
Помимо докладов в программе множество нескучных форматов: рулетки кейсов, батлы, лайв-кодинги и не только. Кроме того, вы получите доступ к записям всех сессий, чтобы потом в любой удобный момент можно было освежить знания!
Крутые спикеры, общение в слаке с другими участниками и полезные сессии – все это уже с 19 апреля! Примерное расписание уже на сайте, а билеты пока еще с early bird скидкой. Подключайтесь!
podlodka.io
Онлайн-конференция Podlodka Android Crew, сезон #13
Недельное мероприятие от команды Podlodka: ежедневные интерактивные сессии в Zoom по актуальным проблемам Android-разработки, нон-стоп общение с экспертами и звёздами индустрии, закрытое профессиональное сообщество в Telegram.
Приложения, которые имеют targetSDK 30 (Android 11), более не смогут получить список всех приложений без специального разрешения и одобрения Google Play. Разбираемся, как работать с новыми ограничениями.
https://medium.com/androiddevelopers/working-with-package-visibility-dc252829de2d
https://medium.com/androiddevelopers/working-with-package-visibility-dc252829de2d
Medium
Working with Package Visibility
In Android, we are making changes to enhance user privacy and platform security to provide our users with a safer experience. Apps…
Некоторое время назад Google вслед за Apple понизила комиссию с покупок до 15% для большинства разработчиков, самое время разобраться как работать с in-app покупками в Android.
https://medium.com/firefly-agency/android-in-app-purchases-tutorial-tips-tricks-487cdbba2b37
https://medium.com/firefly-agency/android-in-app-purchases-tutorial-tips-tricks-487cdbba2b37
Medium
Android In-App Purchase Tutorial: Tips & Tricks
Google Play Billing is a Google service that allows you to sell digital goods inside your application.
Большая шпаргалка по шаблонам проектирования и архитектурным подходам с примерами: от синглтонов и фабрик до чистой архитектуры.
https://www.raywenderlich.com/18409174-common-design-patterns-and-app-architectures-for-android
https://www.raywenderlich.com/18409174-common-design-patterns-and-app-architectures-for-android
kodeco.com
Common Design Patterns and App Architectures for Android
Discover how to make your Android code cleaner and easier to understand with these common design patterns for Android apps. “Future You” will appreciate it!
Подборка советов по проектированию и написанию кода, которые сделают его более поддерживаемым и безопасным.
https://medium.com/livefront/dont-make-your-code-predict-the-future-5b60b58905aa
https://medium.com/livefront/dont-make-your-code-predict-the-future-5b60b58905aa
Medium
Don’t Make Your Code Predict the Future
Principles with examples for writing code that makes everyone’s job easier in the long run without being clairvoyant.
Функции изменяющие область видимости, вроде let или with, зачастую бывают удобными и полезными, однако злоупотребление ими ухудшает читаемость и надежность кода. В статье автор рассказывает как пользоваться подобными функциями без вреда.
https://proandroiddev.com/noisy-code-with-kotlin-scopes-331c632739de
https://proandroiddev.com/noisy-code-with-kotlin-scopes-331c632739de
Medium
Noisy Code 🗣 with Kotlin Scopes
Scopes make your code more readable? think again
Джейк Вортон рассуждает на тему необходимого уровня абстракции в библиотеках, а также почему отсутствие встроенной поддержки Activity и Fragment у ViewBinding — это хорошо.
https://jakewharton.com/integration-verbosity-and-good-layering/
https://jakewharton.com/integration-verbosity-and-good-layering/
Jake Wharton
Integration verbosity and good layering – Jake Wharton
Подборка из 10 советов по ускорению Gradle сборок: не смешивать Java и Kotlin код в одном модуле, отключать неиспользуемые функции Android плагина, отключать Jetifier и другие.
https://medium.com/dipien/10-great-ideas-to-improve-your-gradle-build-times-2a6b281c69c6
https://medium.com/dipien/10-great-ideas-to-improve-your-gradle-build-times-2a6b281c69c6
Medium
10 ideas to improve your Gradle build times [Part I]
Reduce your Gradle build times on android & non-android projects with these great ideas