В новом дайджесте рассказываем о том, как Android управляет памятью, и смотрим под капот потокам, объясняем нюансы разработки PWA для Банка и программируем открытиями, исследуем удаление приложений в 2024 году, смешиваем цвета, ищем путь к стабильности и многое другое. Подключайтесь!

Подписывайтесь на мой Telegram-канал Mobile Insights, где еще больше материалов для мобильных разработчиков.
iOS
• Сравнение кода от DeepSeek и ChatGPT
• Смешивание цветов в SwiftUI
• Потоки под капотом: как работают многопоточность и синхронизация
• Путь к стабильности: как мы снизили потребление оперативной памяти в iOS-приложении
• Как мы адаптировали проект к Strict Concurrency Checking — Swift 6
• Меняем изображений у кнопки SwiftUI при нажатии
• iOS 18 охватила 68% всех iPhone
•
Network Link Conditioner: Simulating Slow Networking
•
Clean SwiftUI Navigation
•
Use DeepSeek R1 via API in Swift
•
Container relative frames in SwiftUI
•
Customizing the appearance of the NavigationStack title in SwiftUI
•
Learn to debug iOS features that require app start from external actions in Xcode
•
8 Swift Performance Tips I Learned After Years of Programming
•
Managing WebSocket messages concurrently with detached actions
•
RouterNavigation: A Practical Approach to Simplify iOS Navigation
•
How to Write Effective Swift Documentation in Xcode
•
Make an Audio Notes App using Whisper in Swift
•
Practical Swift Concurrency. Actors, isolation, sendability
•
Animated OTP Code TextField | SwiftUI
•
Manual View Orientation Control | Orientation Lock | SwiftUI
•
The easiest way to use SwiftUI in a UIKit app
•
Reorder & Move Cards Between Sections with Drag & Drop in SwiftUI + Core Data
•
SceneStorage
•
SwiftGPT — интеграция ChatGPT
•
qBitControl — удаленный клиент для qBittorrent
Android
• Как Android управляет маленькой памятью: Kswapd и LMK
• Будущее за адаптивностью: изменения в API ориентации и изменения размеров в Android 16
• Корутины Kotlin в продакшене: уроки и подводные камни
• Удаленная локализация в приложениях Jetpack Compose
• Android Studio исполнилось 10 лет
• Google предлагает «добровольный уход» сотрудникам, работающим над Pixel и Android
•
Koin Framework 2025 Roadmap: From 4.0 to Future Milestones
•
Faking Network Responses with MockK (Featuring Ktor)
•
Create a spotlight effect with CameraX and Jetpack Compose
•
My 2 cents for the Android Studio anniversary
•
How to Locally Test Your Android or KMM Library Using Maven Local
•
Groovy Who? Exploring Declarative Gradle
•
System Design of Google Photos or an Android Photo Gallery App: A Complete Guide
•
The Liskov Substitution Principle (LSP) in Kotlin — Deep Dive
•
Understanding Coroutines Dispatchers
•
How to Create a Reusable Premium Watermark in Jetpack Compose
•
Production-ready generative AI on Android with Vertex AI in Firebase
•
Real time Object Detection in Android with YOLOv11
•
How to Create a Jumpy Row Layout in Jetpack Compose
•
Enhance Your Game Graphics with Snapdragon Game Super Resolution 2
•
Understanding Kotlin Delegates with Practical Examples
•
Integrate Google Pay with Jetpack Compose on Android
•
Dagger-Hilt vs. Koin vs. Manual Dependency Injection
•
Efficient IO With Buffered Reading & Writing In Kotlin
•
Arrow for Everyone
•
Mesh Gradients in Jetpack Compose
•
Why Not Compose! — коллекция анимаций, композиций и пользовательских интерфейсов
•
Kompose Country Code Picker — выбор страны в Material 3
Кроссплатформа
• Нюансы разработки PWA для Банка Санкт-Петербург от первого лица
• 7 вещей, которые больше всего волнуют аудиторов в модуле критических данных Flutter-приложения
• Такие разные Slivers. Часть 2: базовые классы и делегаты
•
Best Local Database for Flutter Apps: A Complete Guide
•
Free Mobile App Security Testing for Flutter Developers
•
How to Integrate Firebase Analytics on iOS with Kotlin Multiplatform
•
An update on Dart macros & data serialization
•
Multi-Module KMP: The Ultimate Guide to Resource Sharing
•
3 BIG Flutter Interview Mistakes to Avoid (Before Your Next Interview!)
•
ComposableMemes — мемы на Compose Multiplatform
Разработка
• Слишком уж «Быстрый вход» в приложение Т-Банк на Android
• Программирование открытием
• Оптимизация 3D-текстурирования для мобильных игр при помощи градиентов
• CI для мобильной разработки или как мы используем fastlane
• Не вручную: почему стоит автоматизировать рутинные задачи для QA
• Самые высокооплачиваемые вакансии января в сфере разработки приложений
• Google поделился исходниками PebbleOS
• Проектирование и запуск разработки
• Как не уронить прод: Даниэль Халиулин про стабильный софт, качество и разработку
•
The «First AI Software Engineer» Is Bungling the Vast Majority of Tasks It’s Asked to Do
•
Building a Secure Proximity-Based Login System with Bluetooth Low Energy
•
How We Scaled Slack to Support 1000s of Developers
•
My failed attempt to shrink all npm packages by 5%
•
Writing better error messages for your apps
•
Seven things I know after 25 years of development
•
Dopamine addiction to coding
•
Serving a billion web requests with boring code
•
LLM Course – Build a Semantic Book Recommender (Python, OpenAI, LangChain, Gradio)
Аналитика, маркетинг и монетизация
• Удаление приложений в App Uninstall Report 2025 от AppsFlyer
• Как вырастить ARR с $0 до $700 тыс: советы
• Bookshop.org бросает вызов Amazon с помощью новой платформы для электронных книг
• В новогодние праздники мобильные Action-игры стали самыми популярными у россиян
• Тренды маркетинга мобильных приложений в 2025 году
•
Casual Games Report 2024: Following the 5 Routes to Success
•
What (free) graphics tool do you use to make your app icon?
•
How We Used Psychology To Increase Positive Reviews
AI, Устройства, IoT
• DeepSeek — новый ChatGPT, Qwen — новый DeepSeek? Проверяем модели в разработке, иллюстрациях и готовке
• Радарные датчики Logitech позволят компаниям следить за своими офисами
• Block выпустил ИИ-агента для разработки ПО Goose
• JetBrains запустила Junie — ИИ-агента для программирования
← Предыдущий дайджест. Если у вас есть другие интересные материалы или вы нашли ошибку — пришлите, пожалуйста, в почту.

Подписывайтесь на мой Telegram-канал Mobile Insights, где еще больше материалов для мобильных разработчиков.

• Сравнение кода от DeepSeek и ChatGPT
• Смешивание цветов в SwiftUI
• Потоки под капотом: как работают многопоточность и синхронизация
• Путь к стабильности: как мы снизили потребление оперативной памяти в iOS-приложении
• Как мы адаптировали проект к Strict Concurrency Checking — Swift 6
• Меняем изображений у кнопки SwiftUI при нажатии
• iOS 18 охватила 68% всех iPhone
•

•

•

•

•

•

•

•

•

•

•

•

•

•

•

•

•

•

•


• Как Android управляет маленькой памятью: Kswapd и LMK
• Будущее за адаптивностью: изменения в API ориентации и изменения размеров в Android 16
• Корутины Kotlin в продакшене: уроки и подводные камни
• Удаленная локализация в приложениях Jetpack Compose
• Android Studio исполнилось 10 лет
• Google предлагает «добровольный уход» сотрудникам, работающим над Pixel и Android
•

•

•

•

•

•

•

•

•

•

•

•

•

•

•

•

•

•

•

•

•

•


• Нюансы разработки PWA для Банка Санкт-Петербург от первого лица
• 7 вещей, которые больше всего волнуют аудиторов в модуле критических данных Flutter-приложения
• Такие разные Slivers. Часть 2: базовые классы и делегаты
•

•

•

•

•

•

•


• Слишком уж «Быстрый вход» в приложение Т-Банк на Android
• Программирование открытием
• Оптимизация 3D-текстурирования для мобильных игр при помощи градиентов
• CI для мобильной разработки или как мы используем fastlane
• Не вручную: почему стоит автоматизировать рутинные задачи для QA
• Самые высокооплачиваемые вакансии января в сфере разработки приложений
• Google поделился исходниками PebbleOS
• Проектирование и запуск разработки
• Как не уронить прод: Даниэль Халиулин про стабильный софт, качество и разработку
•

•

•

•

•

•

•

•

•


• Удаление приложений в App Uninstall Report 2025 от AppsFlyer
• Как вырастить ARR с $0 до $700 тыс: советы
• Bookshop.org бросает вызов Amazon с помощью новой платформы для электронных книг
• В новогодние праздники мобильные Action-игры стали самыми популярными у россиян
• Тренды маркетинга мобильных приложений в 2025 году
•

•

•


• DeepSeek — новый ChatGPT, Qwen — новый DeepSeek? Проверяем модели в разработке, иллюстрациях и готовке
• Радарные датчики Logitech позволят компаниям следить за своими офисами
• Block выпустил ИИ-агента для разработки ПО Goose
• JetBrains запустила Junie — ИИ-агента для программирования
← Предыдущий дайджест. Если у вас есть другие интересные материалы или вы нашли ошибку — пришлите, пожалуйста, в почту.