Подписывайтесь на мой Telegram-канал Mobile Insights, где еще больше материалов для мобильных разработчиков.
iOS
- Как новая функция Xcode 16 помогла избавиться от 66,000 строк кода
- Переезд с UIKIT на SwiftUI — кажется, УЖЕ ПОРА!
- Doublepoint запускает бесплатное приложение для Apple Watch, позволяющее управлять устройствами с помощью жестов рук
- iOS 18.3 намекает на новое приложение Invites от Apple
- Swift Student Challenge стартует 3 февраля
- Что такое Lazy Variables в Swift
- Объявлены победители 2024 AppleVis Golden Apples
- Задачи с собеседования: LRU Cache — leetcode
iOS to AI Engineer: Your Roadmap Optimizing iOS App Performance Write Swift Like Apple. Part 2 Understanding opaque types and protocols with associatedtype in Swift Introduction to JWTs in Swift SwiftData CRUD Operations with ModelActor Keyboard-driven actions in SwiftUI with onKeyPress Testing Background Uploads in iOS Complete Habit Tracker App — SwiftUI, SwiftData CRUD Carousel With Ambient Background Effect — SwiftUI How to hide a View when the app goes into the background RawRepresentable and AppStorage Persistence Image Caching — SwiftUI Reduce Memory Consumption when using Large Images CodeEditTextView — редактор кода Giffy — клиент Giphy на чистой архитектуре
Android
- Уменьшаем написание boilerplate с помощью File Templates
- Чистим Android-проект просто и правильно
- Подходы к созданию ViewModel в Android
- Управление событиями в ViewModel с помощью StateFlow, SharedFlow и Channel
- Олег Афанасьев про причину создания Rustore и будущее Play Market
- Google открывает доступ к Home API
- Куда идёт мобильная разработка: подводим итоги 2024 года
Kotlin Exception Handling: Why Singleton Exceptions are a bad idea Android Feature Flag Implementation with Firebase Remote Config + Kotlin Flow + Jetpack Compose Binary Compatibility Validator: Managing API Breaking Changes in Your Android Library Debugging Kotlin Coroutines: Making “Optimised Out” Variables Visible Error Handling in Android with Kotlin: Two Approaches for Clean Architecture Kotlin — Functional (SAM) interfaces VS Function-Type Performance Type-Safe Deep Link Navigation using Jetpack Compose What’s new in Android Studio Ladybug Media & Camera experiences How to Encrypt DataStore On Android Android XR Introduction — Build Apps With AR & VR Support How to Record the Screen of ANY Android App We fixed an inconsistency in Kotlin (non-local break & continue) Guards and Pattern Guards mpvKt — медиаплеер для Android Sequence Showcase — подсветка элементов на Jetpack Compose
Кроссплатформа
- PWA vs Native App. Как и зачем в Альфа-Бизнесе создавали свой MobileWeb
Lessons Learned From My First Mobile Flutter App — uStor Storage App Exploring Isolates — Guide to Parallelism In Dart & Flutter Migrate your Android Project to Compose Multiplatform Project React Native Full Course for Beginners Full-Stack Game Development — Kotlin & Compose Multiplatform
Разработка
- Количество новых вопросов на StackOverflow сократилось на 77% по сравнению с 2022 годом
- Сделай удобно: подборка UI/UX-кейсов из цифровых и нецифровых продуктов
- Автоматизация: Есть ли шанс у Maestro для тестирования мобильных приложений?
- BA x Frontend: Как перестать проектировать в голове
- Мок-интервью по мобильному системному дизайну
- Проектирование и запуск разработки
- Mobile App Performance: метрики производительности
- Релизный процесс приложений Ozon
F* : A general-purpose proof-oriented programming language Operating System in 1,000 Lines Building the B&Q Mobile Apps
Аналитика, маркетинг и монетизация
- Рынок мобильных приложений в России 2024
- Candy Crush, Tinder, MyFitnessPal — тысячи приложений шпионят за местоположением пользователей
- Как отслеживать перформанс-метрики приложения и выкатывать только позитивные изменения
- А если без A/B-тестов? Как мы оценивали эффективность контент-продукта через квазиэксперименты
- Лаборатория Google запустила Daily Listen — персонализированный подкаст, основанный на ваших интересах
- Доход от подписок Duolingo вырос на 567% за четыре года
- Netflix начал заниматься спортом, и это принесло свои плоды

