Mobile Native ️️ – Telegram
Mobile Native ️️
5.61K subscribers
1.13K photos
20 videos
3 files
1.28K links
Полезные материалы по мобильной разработке. Статьи, подборки, нововведения, анонсы.

Пробустить канал → https://news.1rj.ru/str/mobile_native?boost

Автор: @artemiygreg
iOS / Swift: @swift_tips
Библиотеки и инструменты: @mobile_dev_tools
Митапы: @meetup_today
Download Telegram
Работа с асинхронными операциями с помощью Kotlin Coroutines

Еще один большой материал с примерами по корутинам 🔥

👉 Знакомство с Kotlin Coroutines
👉 Области видимости (CoroutineScope)
👉 Диспетчеры (Dispatchers)
👉 Корутин-билдеры (Coroutine Builders)
👉 Задачи (Jobs)
👉 Функции приостановки (Suspend)
👉 Continuation
👉 CoroutineExceptionHandler
👉 SupervisorJob
👉 Заключение

Читать (Ru)
👍17🔥51👎1👏1
Injection Points

Обзор нескольких полезных Android API фабрик, с помощью которых мы можем влиять на создание основных компонентов.

👉 AppComponentFactory
👉 LayoutInflater.Factory and Views
👉 FragmentFactory
👉 ViewModelProvider.Factory
👉 WorkManager and WorkerFactory

Читать (En)
👍103🤔2🔥1
5 Kotlin Tips for a Cleaner Codebase

Несколько советов для написания более понятного, поддерживаемого и читаемого Kotlin кода.

👉 Pay attention to the visibility of classes
👉 Keep the number of top-level declarations to a minimum
👉 Prefer readability over saving a few lines of code
👉 Prefer creating a dedicated data class to using a Pair or Triple
👉 Prefer exhaustive when statements

Читать (En)
👍7🔥21
This media is not supported in your browser
VIEW IN TELEGRAM
Material Design Components for Android 1.9.0

Каким-то образом пропустил новость. В Material Design Components for Android 1.9.0 появился новый компонент – Carousel, который работает на основе RecyclerView, со своим CarouselLayoutManager🔥

Читать (En)
👍28🔥72
Learn Kotlin Flow by real examples for Android

Проект с примерами для изучения Kotlin Flow.

• How to use Kotlin Flow in Android Project?
• Doing simple task in background using Kotlin Flow.
• Doing tasks in series using Kotlin Flow.
• Doing tasks in parallel using Kotlin Flow. Blog
• Making two network calls in parallel using Kotlin Flow.
• Using operators like filter, map, reduce, flatMapConcat, zip, and etc.
• Exception handling in Kotlin Flow
• How to use onCompletion in Flow?
• Retry Task using retry operator in Flow.
• Retry Task with Exponential Backoff in Flow.
• Using Kotlin Flow with Retrofit. Blog
• Using Kotlin Flow with Room Database. Blog
• Using Kotlin Flow with various 3rd party libraries.
• Making two network calls in parallel using Kotlin Flow.
• Doing task in series using Kotlin Flow.
• Writing Unit-Test for ViewModel which uses Kotlin Flow
• Flow and StateFlow

GitHub → Learn-Kotlin-Flow
🔥16👍31
Android Developer Roadmap 2023

Еще один, очередной роадмап по Android на 2023 год.

К слову, роадмап несколько не стандартный, потому что состоит из списка упражнений для практики. Выполняя каждое упражнение(читай проект/фича), получаешь опыт.

Для тех, кто не может придумать себе проект для практики, самое то.

Читать (En)
👍23🔥43
Forwarded from Swift Tips
Полезные iOS-инструменты для дебаггинга

Большая статья с разбором популярных инструментов для дебаггинга(Code, View, Memory, Network, etc).

• print(...)
• LLDB
• Debug View Hierarchy
• Slow Animations
• Color Blended Layers
• Reveal
• Memory Graph Debugger
• Debug Navigator
• Charles
• Postman
• Network Link Conditioner
• Time Profiler
• Animation Hitches

Читать (Ru)
🔥6👍21
Обновилась дока по некоторым разделам миграции на Jetpack Compose☝️ и добавился новый раздел Lists and grids.

👉 Lists and grids
👉 Using Compose in Views
👉 CoordinatorLayout to Compose
👉 Display emoji
👍81🔥1
Проектируем функционал сторис

Разбор лучших практик и ошибок в проектировании сторис. В статье собраны 102 гайдлайна на базе 100+ просмотренных приложений.

👉 Блок с миниатюрами сторис
👉 Открытие сторис
👉 Темы для сторис
👉 Просмотр сторис
👉 Отслеживание прогресса
👉 Действия с историями
👉 Переключение историй
👉 Закрытие историй

Читать (Ru)
👍9🔥21
Эффективное и комплексное устранение утечек памяти в Android

Статья посвящена изучению эффективных и комплексных решений по нахождению и устранению утечек памяти в контексте Android-разработки.

👉 Что такое утечка памяти?
👉 Что такое GC?
👉 Однопоточные утечки памяти
👉 Многопоточные утечки памяти
👉 Утечки файловых дескрипторов

Читать (Ru)
🔥9👍63
Android Studio Live Code Templates to Save Your Time Coding

Базовый список шаблонов для Android Studio и несколько вариантов от автора, для использования кастомных шаблонов.

👉 Some pure Kotlin templates
👉 Some Android specific for Jetpack Compose
👉 Custom templates
👉 Template ideas

Читать (En)
🔥8👍1🤔1
Error Handling in Clean Architecture using Flow and Jetpack Compose

Статья с примером реализации обработки ошибок в Clean Architecture и связке Kotlin Flow + Jetpack Compose.

Читать (En)
🔥11👍42
Gradle Cache: Your build’s best friend

Отличная статья от Алексея Быкова, про уровни кеширования Gradle и как они работают.

👉 Input/Action/Output or where it all starts
👉 Caching layers in Gradle
👉 Build cache in action
👉 Remote Build Cache

Читать (En)
🔥8👍42
По ту сторону фидбека: как проходят Android-собеседования и чего мы ждём от кандидатов

Сегодня объявляется день материалов связанных с собесами 😉

Первая статья от Альфа-Банка. Чего они ожидают от кандидатов на позицию Android-разработчика. И на что вам нужно обратить внимание, чтобы получить заветный оффер от.

👉 Собеседование — это не допрос
👉 Зачем нужны вопросы на стадии знакомства?
👉 Важны ли софт-скилы?
👉 В каком формате проходит техническая часть
👉 Нужно ли правильно ответить на все вопросы?
👉 Что происходит после технической части?

Читать (Ru)
👍11💩8🔥7👏1
Что порой кроется за «успехом»

Вторая статья – довольно интересная история прохождения собесов на позицию Senior. 25 компаний, 54 этапа, 2 оффера 😱

Есть один интересный фрагмент в статье – «…SharedFlow и StateFlow - опиши их. Я описал flow, параметры в конструкторах, но строго наоборот, перепутав одно с другим, и это при условии, что я чуть ли их не каждый день использовал в повседневной работе. Они трижды меня спрашивали, точно ли так, и я трижды с готовностью отвечал, что все точно так!)».

Кандидат любого уровня может затупить на совсем простых, банальных вещах. Так что если вы джун и где-то затупили на элементарном, не расстраивайтесь – такое бывают у всех 😉

Главное делайте выводы, собирайте фидбек, лучше готовьтесь, старайтесь не нервничать и получите свой оффер 😎

Читать (Ru)
👍11🤮6🤡3🔥2💩2🤔1
Оптимизация анимации на Compose: крутим лоадеры, ищем неочевидные функции

Статья с разбором анимаций в Compose. Особенности анимаций, рекомпозиция, Canvas, в чём разница между группами анимаций Composable и Suspend, ну и всё это с примерами.

Читать (Ru)
👍10🔥3🤔1
Using String Resources in a ViewModel

Еще один вариант использования строковых ресурсов во ViewModel через Sealed классы.

Читать (En)
👎16👍10🔥2🤔1
Shielding Your App: Implementing Best Practices for Android Security

Толковая статья с общими рекомендациями и best practices по безопасности в Android.

👉 ProGuard / R8
👉 Store Safely All API Keys And Other Sensitive Data
👉 EncryptedSharedPreferences/Data Store
👉 Database Encryption
👉 Root Detection/Play Integrity API
👉 Use App-Specific Storage For Sensitive Data
👉 Network Security Configuration
👉 Restrict Access To Google API Service Keys
👉 Firebase security rules
👉 Keep App And SDKs Updated

Читать (En)
👍12🔥42👏1🤔1
Kotlin: взгляд изнутри — преимущества, недостатки и особенности

Большая статья про Kotlin, его основные преимущества, недостатки и особенности.

👉 Краткая история языка
👉 Any, Unit, Nothing
👉 Data class
👉 Sealed class
👉 Функции области видимости: let, run, with, apply, also
👉 Null safety
👉 Static: object, companion object, @JvmStatic, const val
👉 LateInit
👉 Делегирование
👉 Extensions
👉 Как extensions выглядят в Java
👉 Функциональные (SAM) интерфейсы
👉 Generics: инвариантность, ковариантность, контравариантность, where
👉 inline, noinline, non-local return, crossinline, reified, итоги
👉 Заключение
👉 Полезные ссылки

Читать (Ru)
👍251👎1🔥1👏1
Пошушукаемся о Барбаре Лисков или раз и навсегда запоминаем принцип подстановки

Еще одна статья с попыткой разбора одного из принципов SOLID – Liskov Substitution Principle (принцип подстановки Барбары Лисков).

Возможно будет полезно начинающим.

Читать (Ru)
👍12🔥4👏2
This media is not supported in your browser
VIEW IN TELEGRAM
Creating interactive UIs with MotionLayout using Jetpack Compose

Статья с примером, как можно добавить интерактивщины в ваш UI с помощью MotionLayout в Jetpack Compose.

Выглядит прикольно, но получается довольно громоздко по коду.

Читать (En)
🔥7👍31