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
Android-разработка для новичков: 20+ полезных ресурсов

Информативная подборка полезных ресурсов для начинающих Android-разработчиков: интернет-ресурсы, книги, ютубчики, тг-каналы и т.д.

Кстати, наш канал @mobile_native тоже попал в подборку, что очень приятно 💪

Читать (Ru)
👍106👎3🔥3
Как катить фичи без релизов. Часть 1: про виджеты

Статья от ребят из Альфы про один из подходов Backend-Driven UI – Виджеты, который позволяет гибко настраивать и обновлять функциональность приложения без релизов.

Читать (Ru)
👍9💩42🔥2
How to create Expandable List in Jetpack Compose

Пример реализации раскрывающегося списка на Jetpack Compose.

Читать (En)
👍9🔥1👏1
Best practices for SQLite performance

Тут у Гугла появился раздел с best practices для производительности SQLite.

👉 Configure the database for performance
👉 Define efficient table schemas
👉 Improve query performance
👉 Use troubleshooting tools

Читать (En)
👍10🔥21
The beauty of Kotlin type system

Неплохая статья про систему типов в Kotlin.

👉 What is a type?
👉 Why do we have types?
👉 The relation between classes and types
👉 Class vs type in practice
👉 The relationship between types
👉 The subtype of all the types: Nothing
👉 When is some code not reachable?
👉 The type of null

Читать (En)
👍81🔥1
Kotlin Coroutines Tutorial for Android: Getting Started

Еще один свежий туториал по корутинам.

👉 Suspending vs Blocking
👉 Coroutine Builders
👉 Coroutine Scope / GlobalScope
👉 Coroutine Context / Dispatchers
👉 Canceling a Coroutine / Coroutine Job
👉 Error Handling in Coroutines / Try-Catch

Читать (En)
🔥19👍7👏2
Фантастический Compose и его побочные эффекты

Базовая статья для начинающих про Jetpack Compose.

👉 Термины и особенности
👉 Жизненный цикл
👉 Параллелизм функций
👉 Произвольный порядок вызова функций
👉 Побочные эффекты или нож в спину новичка

Читать (Ru)
🔥7👍43
Android Data Repository — A simple pattern that we often misunderstand

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

👉 Don’t use JSON/SQL model in the Repository methods
👉 Repository is not a group of backend endpoints
👉 Repository is not a database table
👉 Not every Repository needs a Data Source

Читать (En)
🔥11👍5🤔2💩2
Осознанная оптимизация Compose

Советы и наработки по написанию оптимизированного Compose-кода от команды Ozon Seller.

Статья будет полезна как начинающим, так и опытным разработчикам, в ней подробно описаны оптимизации и механизмы Compose, а также рассказано про слабо задокументированные особенности и исправления ошибок, которые есть в других статьях.

👉 Composable-функции
👉 Стабильные типы
👉 Оптимизация пропусков
👉 Долгие вычисления при рекомпозиции
👉 Layout
👉 Прочие советы
👉 Отладка и мониторинг производительности

Читать (Ru)
🔥16👍62🤔1
Forwarded from Swift Tips
Многопоточность в iOS-разработке

Разбор с примерами, различных инструментов для мнопоточки в iOS(основы, особенности, проблемы, что в каких случаях использовать и т.д.).

• Основы многопоточности
• Многопоточность в Swift
• Использование pthread и NSThread
• Grand Central Dispatch в Swift: углубленный
обзор с примерами
• NSLock в Swift: управление доступом к общим
ресурсам
• Await и async в Swift: новые горизонты
многопоточности

Читать (Ru)
🔥6👍3🙏1
Как катить фичи без релизов. Про низкоуровневый Server Driven UI

Тут вышла 2-ая часть из цикла статей «Как катить фичи без релизов», в которой чуть больше деталей как это всё гибко настраивается, конфигурируется и превращается в верстку с учётом дизайн-системы.

Читать (Ru)
🔥12👍5🤔2
Какого цвета Ripple?

Конкретного ответа в статье нет, зато есть достаточно любопытное исследование. Как вычисляется цвет ripple, как всё устроено под капотом, связь Ripple, MD2, MD3 и т.д.

👉 Что есть Ripple
👉 Ripple & Material Design 2
👉 Ripple & Material Design 3
👉 Ripple & XML
👉 Ripple & Jetpack Compose под капотом

Если самим лень копаться и разбираться как это работает – статья для вас 😉

Читать (Ru)
👍14🔥3👏1🤔1
This media is not supported in your browser
VIEW IN TELEGRAM
Crafting a Clock in Jetpack Compose with Canvas

Пример реализации часов на Jetpack Compose через Canvas.

Код на GitHub → Watchface
И еще одна реализация → Clock of Clocks

Читать (En)
🔥164👍3🤯3
В AppMetrica добавили решение Workspaces для быстрой настройки визуализации данных о показателях работы мобильного приложения.

Теперь можно создавать автономные дашборды с наглядным представлением различных метрик приложения.

• Работайте со всеми доступными отчётами и дашбордами в удобном интерфейсе AppMetrica

• Собирайте дашборды с KPI, чтобы команда могла в любой момент ознакомиться с текущим состоянием дел

• Отслеживайте только нужные показатели на дашборде и не отвлекайтесь на несущественные детали

Читать (Ru)
👍3🔥2💩21🤔1🤮1🤡1
Git.pdf
641.1 KB
Ловите шпаргалку по Git
🔥20👍7❤‍🔥22👏2
Обзор библиотек для скриншот-тестирования Android проектов

Первая часть с обзором библиотек для скриншот-тестирования.

👉 Facebook* Screenshot Testing Library
👉 Shot
👉 Paparazzi
👉 Dropshots

Читать (Ru)
🤔7👍6🔥2
Tools and tips I wish I knew when I started Android development

Несколько инструментов и советов для начинающих.

👉 JetBrains Toolbox
👉 Android codelabs
👉 ADB Idea
👉 Timber
👉 GitKraken
👉 Now In Android
👉 Material Symbols
👉 Android roadmap
👉 Android Developers on YouTube

Читать (En)
🔥105👍5💩4
Migrate to Jetpack Compose

Гугл видимо начал дополнять доку по Jetpack Compose и уже добавили/обновили несколько коротких гайдов по миграции на Jetpack Compose.

👉 Migrate RecyclerView to Lazy list
👉 Migrate CoordinatorLayout to Compose
👉 Migrate Jetpack Navigation to Navigation Compose
👉 Migrate from Material 2 to Material 3 in Compose
👉 Window insets in Compose
👉 Lists and grids
👉 Other considerations
🔥10👍42
Настраиваем CI/CD для тестовой инфраструктуры Android

Гайд по настройке CI/CD для тестовой инфраструктуры и интеграции между Kaspresso, Allure TestOps и Gitlab CI.

👉 Загрузка результатов тестов из Gitlab
👉 Аутентификация Gitlab сборки
👉 Настройка GitLab проекта для загрузки тестовых данных
👉 Создание скрипта сборки

Читать (Ru)
👍121🔥1🤔1
Eliminating coroutine races

Статья с примерами races condition в корутинах и вариантами решения.

Читать (En)
👍8🔥21