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
How to Deploy a Ktor Server Using Docker, PostgreSQL, and Flyway: A Journey to Effortless Deployment

Серия статей, как развернуть свой сервер на Ktor.

👉 Part 1. Laying the Foundations — PostgreSQL and Flyway
👉 Part 2. Launching the Ktor Server — Docker at its Finest
👉 Part 3. Reaching Zenith — Seamlessly Updating and Migrating
👍8🔥2🤔1
This media is not supported in your browser
VIEW IN TELEGRAM
Clok: The math behind the clock

Уже было несколько статей про различные виды реализаций часов на Jetpack Compose и вот еще одна.

В статье подробный разбор с математикой, по реализации аналоговых часов на Jetpack Compose(Canvas).

Код на GitHub → Clok

Читать (En)
🔥10👍82
Публикуем Android приложения автоматически с помощью Gitlab CI

Гайд по настройке автоматической публикации сборок для внутреннего тестирования с помощью Gitlab CI.

Читать (Ru)
👍17🔥3🤔1
Performance with Jetpack Compose

Несколько статей о том, как писать более производительный Jetpack Compose код, как минимизировать рекомпозиции и всё такое.

👉 Part 1
👉 Part 2
👍14🔥4👏1
Kodein DI для Android. Основы API

Вводная статья по основам API Kodein. Как им пользоваться, как у него дела со скоупами и многомодульностью.

👉 Принципы Kodein(декларативный DSL, Inline & reified, Infix)
👉 DI или Service Locator
👉 Описание графа DI
👉 Теги
👉 Контейнер
👉 Контекст и скоупы
👉 Многомодульность
👉 Заключение

Читать (Ru)
👍9💩52🔥2
Automate Gradle Dependency Updates on Your Android Project

Статья про Gradle Version Catalog. Как он работает, как обновлять зависимости с помощью плагинов и пример автоматического обновления через GitHub Action.

Читать (En)
👍6🤔2🔥1
Yandex MapKit для новичков: разрабатываем карты в Android-приложении

С учётом "качественной" документации к Yandex MapKit, кажется статья будет супер полезной начинающим.

👉 Введение: внедрение и настройка Yandex MapKit в проекте
👉 Открываем определённую область на карте
👉 Устанавливаем метку на карте
👉 Использование векторных изображений
👉 Работа с зумом: меняем иконку маркера при отдалении и приближении камеры
👉 Обработка события нажатия на метку
👉 Выделение объекта на карте
👉 Получаем информацию об объекте при тапе на него

Если еще не работали с Yandex MapKit, рекомендую закинуть статью в избранное.

Читать (Ru)
💩15👍14🔥32👏1
Forwarded from Swift Tips
iOS Developer Roadmap 2023

Не знаю насколько актуально, но обратить внимание в любом случае можно, особенно начинающим.

Роадмап по iOS с подборкой ресурсов по некоторым темам.

Читать (En)
👍9👎2🤔2🔥1
Виджеты на iOS и Android: что учесть при проектировании и дизайне

Статья про процесс проектирования виджетов, особенности дизайна и различия платформ iOS и Android.

👉 Что и для чего должно быть в виджете
👉 Размеры и ресайзинг
👉 Что там с iOS
👉 Что там с Android
👉 Визуальная подача
👉 Краевые состояния
👉 Accessibility
👉 Взаимодействие и анимация
👉 Чек-лист эффективного виджета

Читать (Ru)
👍42🔥1🤔1
Ну что вы знаете про качество кода!!!

Я просто не мог с вами не поделиться этим чудом из реального проекта. К слову, это писал человек, который позиционирует себя ближе к сеньор.

Нейминг второго метода я конечно же изменил, но параметры оставил 😂, ну и в методе сообственно куча проверок по всем этим параметрам.

P.S. забирайте екстеншн, полюбому пригодится =))
🤡29😁16🔥5😱3👎2😈1
Миграция приложения на Jetpack Compose

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

👉 Зачем мигрировать на Compose
👉 Рекомендации до миграции
👉 Частичная миграция UI: интеграция Compose во View
👉 Частичная миграция UI: интеграция View в Compose
👉 Чем хороша полная миграция на Compose
👉 Полная миграция UI
👉 Миграция дизайн-системы

Читать (Ru)
🔥7👍41
Unleashing Creativity with Custom Modifiers in Android Jetpack Compose

Статья про кастомные модификаторы Jetpack Compose.

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

👉 Understanding Custom Modifiers
👉 Creating Custom Modifiers
👉 Real World Examples and Use Cases

Читать (En)
🔥143👍3👎1
Ускоряем сборку за счёт миграции с kapt на ksp

Команда hh делится опытом миграции с kapt на ksp.

👉 Немного теории
👉 Почему мы решили попробовать перейти на ksp
👉 Исследование перехода на ksp
👉 Последовательная реализация перехода
👉 Пишем свой ksp-процессор (на примере библиотеки для обработки аннотаций)
👉 Результаты

Читать (En)
🔥103👍1
Add Shake Animations to your Composable

Пример реализации простой анимации встряхивания в Jetpack Compose, с помощью кастомоного модификатора.

Перевод от AppTractor → Добавляем анимации встряхивания в Composable

Читать (En)
🔥6👍31
Clean Architecture for Android Sample Project

Еще один проект в копилку для изучения. Проект – реализация чистой архитектуры от автора книги «Clean Architecture for Android».

👉 Feature separation
👉 Layer separation(UI, Presentation, Domain, Data, Data Source)
👉 Dummy analytics
👉 Navigation
👉 Animations
👉 Unit tests
👉 End-to-end tests
👉 Demonstrates use of Jetpack Compose
👉 Demonstrates use of Coroutines including Flow
👉 Demonstrates MVVM
👉 Code quality checks using ktlint
👉 Code quality checks using detekt

Код на GitHub → CleanArchitectureForAndroid
👍14🔥41💩1
Jetpack Compose: Mastering States

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

👉 structuralEqualityPolicy()
👉 neverEqualPolicy()
👉 referentialEqualityPolicy()

Читать (En)
👍113🔥3
Best practices for error handling in Kotlin

Статья с обзором различных способов обработки ошибок в Kotlin.

👉 Exceptions in Coroutines
👉 Uses of Sealed Classes for Error Handling
👉 Functional Error Handling
👉 Uncaught Exception Handlers
👉 Handling Network Errors with Retrofit
👉 Graceful Error Handling with Coroutines
👉 Error Handling with RXJava

Читать (En)
12👍2👎2🔥2
Что посмотреть на выходных.

Накопилась очередная пачка различных видосов – туториалы, доклады с конференций и т.д.

Android

• Top App Bar (Toolbar) - UX With Material3
• Navigation Rail - UX With Material3
• Navigation Drawer - UX With Material3
• Bottom App Bars - UX With Material3
• Selection UI Components (Checkboxes, Switches, Radio Buttons) - UX With Material3
• Live Edit for Jetpack Compose
• Ускоряем сборку за счёт миграции с kapt на ksp
• Универсальные пуши для Android. FCM, HMS и RuStore в одном месте
• Упрощаем и укрощаем UI для Android с помощью аннотаций
• Mock Junior Android Developer Interview
• Как узнать кто вызывал функцию? StackTrace стек вызовов в Kotlin & Java
• Аналитика многомодульных проектов
• Архитектура сложных клиентских приложений
• Как избежать хаоса: навигация как отдельный логический уровень

iOS

• Как жить с двумя провайдерами карт в крупном проекте
• Swift-уроки: ElasticAnimation / Эластичная анимация
• Декларативная навигация в iOS-приложении
• Кто ты, SwiftData
• GC, ARC, RAM. Часть 3. iOS
• iOS 17 Data Flow with Observation Framework
• Xcode Structured Logging
• Accessibility in Swift: Dynamic Colors
• SwiftUI: Placing Tab Bar Over Sheet’s | Apple Map’s Bottom Sheet
• Animated Custom Button - Keyframes API
• See How To Store An Image In SwiftData
• SwiftUI Dynamic Sheet Height - iOS 17
• I converted a Core Data to SwiftData
🔥8👍41
Kotlin’s Supercharged Flow API — Combining and Merging Flows for Reactive Programming

Статья с разбором и примерами работы функций сombine, merge, zip для работы с несколькими flow.

Читать (En)
👍8🔥41
The Art of Small Animations in Android with Jetpack Compose

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

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