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
Dot. Dash. Design in Jetpack Compose

Большая статья с примерами рисования всевозможных линий с использованием PathEffect в Jetpack Compose.

Читать (En)
👍15🔥5🤔1
Mastering Android ViewModels: Essential Dos and Don’ts Part 3

Третья часть из цикла Mastering Android ViewModels.

Эта часть про то, почему лучше не использовать Android зависимости во VM и про использование ленивой инициализации зависимостей в конструктор.

Читать (En)
🔥8👍61👎1
Forwarded from Swift Tips
iOS Privacy Manifest

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

В соседнем чате наткнулся на тулзу, по генерации файла – iOS Privacy Manifest Maker. Дублирую сюда + собрал несколько полезных статей/гайдов.

👉 Privacy Manifest: что нужно о нём знать для внедрения в проект
👉 Как добавить Privacy Manifest
👉 How to quickly get a PrivacyInfo.xcprivacy file for your iOS app
👉 iOS Privacy Manifest Maker
👍7🔥32
Обзор архитектуры Compose с использованием паттерна «координатор»

В статье рассматривается пример реализации архитектуры UI-слоя на Compose, которая основывается на Uni-directional data flow и state hoisting с использованием паттерна «координатор» для навигации.

👉 Принцип Uni-directional data flow
👉 Принцип State Hoisting
👉 Паттерн «координатор»
👉 Резюме

Читать (Ru)
🤡13👍63💩2🔥1
Jetpack Compose для ленивых

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

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

Читать (Ru)
👍113🤡3🔥2👎1
Important Coroutine Interview Questions for Experienced Android Developers

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

👉 Что такое корутины и чем отличаются от потоков
👉 Преимущества корутин
👉 Как создать и запустить корутину
👉 В чем разница между launch, async и runBlocking
👉 Концепция coroutineScope
👉 Что такое suspend функции, чем отличаются от обычных
👉 Как обрабатывать исключения в корутинах
👉 Концепция coroutineContext и coroutineDispatcher
👉 Как выполнять фоновые операции с использованием корутин
👉 Как остановить/отменить корутину

Читать (En)
👍1211🔥3🤮3👎1
Рекомпозиция в Compose: что не видно разработчику невооруженным глазом

Гайд, в котором простыми словами объясняется, как устроен процесс построения UI на Compose.

👉 Как работает рекомпозиция в Compose
👉 На чём основана рекомпозиция
👉 Как происходит оптимизация рекомпозиции на фреймворк

Читать (Ru)
👍9🔥7🤔1🤮1💩1
UseCase Red Flags and Best Practices in Clean Architecture

Обзор различных вариантов написания юзкейсов и лучших практик (бизнес-логика, нейминг, потокобезопасность, красные флаги).

Читать (En)
👍18🔥41
Kotlin Generic Variance

Подробный иллюстрированный гайд про Generic Variance в Kotlin, модификаторы In и Out.

👉 Covariance
👉 Covariance and Substitution
👉 Contravariance
👉 Contravariance and Substitution
👉 Variance Modifiers(in, out)
👉 Variance in the Standard Library

Читать (En)
🔥7👍63👎2
Forwarded from Swift Tips
Apple Design Resources

Apple пополнила свою библиотеку макетов в Figma. Cтали доступны следующие шаблоны 👇

🟢TipKit
🟢Wallet
🟢Tap to Pay on iPhone
🟢Siri & App Shortcuts
🟢Sign in with Apple
🟢Messages
🟢Live Activities
🟢Apple Pay
🟢App Clips

Смотреть 🌐
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥8👍52
Новые коллекции в Android

Неплохая статья с обзором коллекций из AndroidX Collection по типу: IntList, IntIntPair, IntIntMap, ScatterMap.

👉 Списки или Динамические массивы
👉 Пары значений
👉 Хэш-таблицы

Если коротко, то это всё, те же коллекции, только считаются более эффективными и оптимизированными. На практике, в реальных проектах наверное можно редко встретить, но знания о их существовании лишними не будут.

Читать (Ru)
👍17🔥32
Где мне это пригодится в жизни или применение Nothing в Kotlin на примере

Когда речь заходит о Nothing, многие вспоминают TODO(), а на практике в своём коде вообще не использовали.

Вот неплохая статья, в которой на примере класса Either из библиотеки Arrow рассказывается практическое применение Nothing, разбираются особенности системы типов Kotlin - sealed-иерархии, ковариантность и Nothing, без которых решение задачи становится практически невозможным.

Читать (Ru)
🔥11👍7🤡32💩2🤮1
С Праздником, друзья! С Днём Победы!
48😢19👍4🙏3
Как новый компилятор K2 ускоряет компиляцию Kotlin на 94%

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

Контент статьи основывается на выступлении и овервью, но с добавлением дополнительной информации.

👉 Как работает компилятор
👉 Frontend (реализация K1/K2, как работает K1/K2, сравнение результатов K1 и K2)
👉 Backend (IR, IR lowering, Target code)
👉 Выводы
👉 Дополнительные материалы

Читать (Ru)
🔥135👍5
Room для Kotlin Multiplatform. Пробуем нативное решение

Анна Жаркова на примере простого Todo приложения, написанного на KMP с использованием Compose Multiplatform затестила мультиплатформенный Room. Подробности в статье.

Читать (Ru)
👍13🔥4👎21🐳1🫡1
Forwarded from Swift Tips
Apple близка к соглашению с OpenAI по интеграции ChatGPT на iPhone

Bloomberg сообщает, что Apple заключила соглашение с OpenAI об интеграции ChatGPT в iOS 18.

Официальных комментариев пока что не было, по слухам – анонс можно ожидать на WWDC, которая пройдет в июне.

Читать (En)
👍5🔥5🤔3
This media is not supported in your browser
VIEW IN TELEGRAM
Как мы реализовали кнопку со свайпом на Jetpack Compose

Интересная статья о том, как реализовать кнопку со свайпом на Jetpack Compose с помощью кастомного Layout, как всё это дело оптимизировать и минимизировать количество рекомпозиций.

Исходный код на GitHub → SwipeButton

Читать (Ru)
🔥21👍101👎1
Kotlin Coroutines 101: Async Programming in Practice

Подробная статья по основным концепциям корутин, с практическими примерами кода к каждому блоку.

👉 Understanding Coroutines: A Primer
👉 Kotlin Coroutines Components
👉 Delving into CoroutineContext: Understanding the Core
👉 Unveiling the CoroutineScope: Your Gateway to Control
👉 Coroutine-builders: Creating Coroutines
👉 Launching Coroutines: Real-world Applications
👉 Wrapping up

Читать (En)
🔥65👍3
Developer Keynote Google I/O 2024: официальная поддержка KMP, развитие Gemini и AI в Андроиде

Статья с обзором того, что было на Developer Keynote (Google I/O '24).

👉 Gemini API & Google AI studio
👉 Как AI помогает в Android
👉 Developer productivity
👉 KMP
👉 Compose
👉 Shared element transitions
👉 Адаптивный UI
👉 Виджеты
👉 Тестирование
👉 Как Compose ускоряет создание превосходного UX на разных устройствах (Soundcloud)
👉 Дополнительные улучшения Compose
👉 Как AI может повысить вашу производительность
👉 Project IDX
👉 Checks
👉 Обновления в Firebase

Читать (Ru)
🔥10👍52👨‍💻1
Forwarded from Swift Tips
Apple Pathways

Apple систематизировала доку по категориям, внутри которых, все необходимые материалы(документация, ресурсы, видеотуториалы).

🟢Design
🟢Swift
🟢SwiftUi
🟢Games
🟢visionOS
🟢App Store

Читать (En)
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥5👍32
Как мы отслеживаем просадки FPS в Альфа-Мобайл?

Полезная статья, в которой разработчик из Альфа-Мобайл делится опытом внедрения механизмов мониторинга производительности в продукты компании.

👉 Зачем тратить время на перформанс?
👉 Быстрое отступление или как понять, что экран действительно лагает?
👉 Choreographer
👉 Открытие Activity может вызывать просадку FPS и это нормально
👉 TODO или что мы сделали не так?

Читать (Ru)
🔥8👍32