В новом дайджесте производительный SwiftUI и бесшовное взаимодействие Compose и View, сборка ядра Android и отслеживание угла горизонта, решение задач распознавания, прямые без препятствий, что происходит на рынке разработки, глажка травы и многое другое. Заходите!

Подписывайтесь на мой Telegram-канал Mobile Insights, где еще больше материалов для мобильных разработчиков.
iOS
• Производительный SwiftUI: используем UIKit
• Формализация принципа Open/Closed: как сохранить обратную совместимость с помощью SOLID
• Отслеживание угла горизонта на изображении с помощью фреймворка Vision
• Тактики ускорения билда: матиз, кобальт, камри 3.5
• Эволюция шпионского софта под iOS
• Жизнь iOS разработчика в условиях санкций
• Моменты неотзывчивости iOS-приложений: как найти и исправить
• В AirPods появится живой перевод
• По слухам, в iOS 19 будет новый дизайн
•
Picker in SwiftUI explained with code examples
•
Customizing modal presentation background and color scheme in SwiftUI
•
Swift on Raspberry Pi: Building Natively and Cross Compiling
•
Understanding the New Swift 6 Concurrency Features
•
SwiftUI: Connect Two Points with Straight Line Segments + Rounded Corners
•
Improving result builder failures using @available
•
Key Considerations Before Using SwiftData
•
Understanding structural identity in SwiftUI
•
Building Filters in SwiftUI with SwiftyFilters
•
KeyPath in Swift
•
iOS Architecture in the Era of SwiftUI
•
Publish Your macOS App Outside the App Store: Notarization, DMG, & Gumroad Guide
•
Responsive Chips Selection — Layout API — Resizable — iOS 16+
•
Xcode 16 Debugging Tutorial for Beginners
•
Mastering Enum-Driven Tab Views in SwiftUI: A Smarter Approach
•
From Top Bar To Sidebar With The sidebarAdaptable TabView Style
•
More Data, More Drama
•
SwiftUIKit — дополнения SwiftUI и Swift
•
FeedKit — чтение и генерация RSS, Atom и JSON фидов
•
Xcore — коллекция расширений и компонентов Swift
Android
• ServerSocket для IPC в Android и примеры межпроцессного взаимодействия
• Объединяем Compose и View: бесшовное взаимодействие с помощью CompositionLocal
• Сборка ядра Android и модулей aircrack-ng
• 7 мощных возможностей Kotlin, используемых продвинутыми разработчиками
• Шпаргалка: Kotlin suspend функции
• Сравнение Dagger 2, Dagger Hilt и Koin
• Собеседование по Kotlin (все собеседования)
• Ultron — фреймворк для тестирования Android UI и Compose
• Собираем грабли при профилировании Android-приложений
• Google облегчает перенос компьютерных игр на Android
• Как я прошел Android-собеседования в Google, Amazon и Motorola
•
Strong skipping does not fix Kotlin collections in Jetpack Compose
•
Composing with Accessibility in Mind: Because Every User Matters
•
Android Automotive OS Architecture: Definitive Guide
•
Design with Widget Canonical Layouts
•
Bridging Compose and View: Seamless Interop Communication with CompositionLocal
•
Understanding Hot and Cold Flows in Kotlin
•
Koin Annotations 2.0 — Release is out!
•
10 Critical Jetpack Compose Mistakes You’re Probably Making (And How to Fix Them)
•
Why @Binds is faster than @Provides annotation in Dagger/Hilt?
•
Using the Android Context and Manifest to Unveil the Android System Mechanics (2025 Edition)
•
Biggest Problem with Jetpack Compose: Performance
•
AI Assistant Comes to Kotlin Developers in Android Studio
•
Kotlin for Seniors: Stop Writing Code, Start Crafting It. 3 tips.
•
Unlock Deeper Health Insights: Health Connect Jetpack SDK is now in beta
•
Writing Carousel Pager Using Jetpack Compose
•
Android Clean Architecture: Understanding the Domain Layer
•
Man-in-the-Middle (MITM) Attacks in Android Development: How to Secure Your App
•
Protobuf vs JSON for Android
•
Jetpack WindowManager 1.4 is stable
•
Snappy, Not Crappy: An Android Health & Performance Journey
•
Building an Android Smart Gallery App to Organize Images
•
Now in Android: 114 — Google I/O 2025, Android Studio at 10, Android 16 Betas, and more
•
Develop for Android XR
•
Top 4 Security Best Practices for Your Android App
•
Fix Kotlin App Issues in Minutes — Stop Debugging the Hard Way!
Кроссплатформа
• Решение задач распознавания на Flutter
• Flutter Dev Podcast #50: Flutter на ОС Аврора
• Полный разбор Kotlin Inject — Dagger для Kotlin Multiplatform
• Коллекции во Flutter
•
Mastering ButtonStyle in Flutter
•
How to Eliminate Granny Clicks in Flutter
•
Integrating Cursor with Kotlin Multiplatform (KMP/KMM)
•
Flutter. New widget: MeshButton
•
How to Implement a Retry Interceptor in Flutter with Dio
•
Robust Flutter CI/CD: The Local Side with Fastlane
•
A Pragmatic approach to use Pattern Matching and Records in Flutter and Dart
•
How to manage global app events effectively on your Flutter app
•
KMP Liquid Search — анимированная поисковая строка
•
CZAN — дизайн-система для Compose Multiplatform
Разработка
• Прямая без препятствий. От чего и зачем нужно защищать мобильные приложения
• TutOn: Нежданное путешествие, или как мы в 11 классе сделали мобильное приложение для помощи учителю
• Мобильная разработка: что происходит на рынке и что важно знать в 2025 году
• Путь UX-исследователя — эмпатия vs аналитика, поиск респондентов и происшествия на интервью
• От Junior до Senior: требования к грейдам и здоровье как скилл
• Как проводить собеседования интересно и продуктивно
• Зачем программисту знать лямбда исчисление
• Мок интервью на позицию СТО
• Публичное собеседование по System Design
• Мобильная инфраструктура. Взгляд изнутри
•
A software architecture reading list
•
Supercharging Discord Mobile: Our Journey to a Faster App
•
Forcing AI on developers is a bad idea that is going to happen
Аналитика, маркетинг и монетизация
• Об «умных» молотках и навязчивых приложениях
• Skich запускает альтернативный магазин приложений для пользователей iOS в ЕС
• Короткометражные драмы отбирают пользователей у большого стриминга
• Самописная платформа для A/B-тестирования Trisigma: что она умеет и какую пользу способна принести бизнесу
• Разработчик Pokémon Go компания Niantic продаст игровой бизнес Scopely
• От legacy к успеху: как мы переработали главную страницу приложения М2 и увеличили MAU
• Как приложение «Погладь траву» собрало 30К установок и попало в топ App Store
AI, Устройства, IoT
• Градиентный бустинг для чайников
• Практическое руководство по выбору между ChatGPT, Claude, Gemini, Grok и Perplexity
• Тёмный лес разработки для нестандартных устройств: как войти и не заблудиться
• На Hugging Face открылся курс по ИИ-агентам
• OpenAI запустила API для создания автономных агентов и SDK для их оркестровки
• Глобальные поставки смарт-часов в 2024 году впервые снизились
← Предыдущий дайджест. Если у вас есть другие интересные материалы или вы нашли ошибку — пришлите, пожалуйста, в почту.

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

• Производительный SwiftUI: используем UIKit
• Формализация принципа Open/Closed: как сохранить обратную совместимость с помощью SOLID
• Отслеживание угла горизонта на изображении с помощью фреймворка Vision
• Тактики ускорения билда: матиз, кобальт, камри 3.5
• Эволюция шпионского софта под iOS
• Жизнь iOS разработчика в условиях санкций
• Моменты неотзывчивости iOS-приложений: как найти и исправить
• В AirPods появится живой перевод
• По слухам, в iOS 19 будет новый дизайн
•

•

•

•

•

•

•

•

•

•

•

•

•

•

•

•

•

•

•

•


• ServerSocket для IPC в Android и примеры межпроцессного взаимодействия
• Объединяем Compose и View: бесшовное взаимодействие с помощью CompositionLocal
• Сборка ядра Android и модулей aircrack-ng
• 7 мощных возможностей Kotlin, используемых продвинутыми разработчиками
• Шпаргалка: Kotlin suspend функции
• Сравнение Dagger 2, Dagger Hilt и Koin
• Собеседование по Kotlin (все собеседования)
• Ultron — фреймворк для тестирования Android UI и Compose
• Собираем грабли при профилировании Android-приложений
• Google облегчает перенос компьютерных игр на Android
• Как я прошел Android-собеседования в Google, Amazon и Motorola
•

•

•

•

•

•

•

•

•

•

•

•

•

•

•

•

•

•

•

•

•

•

•

•

•


• Решение задач распознавания на Flutter
• Flutter Dev Podcast #50: Flutter на ОС Аврора
• Полный разбор Kotlin Inject — Dagger для Kotlin Multiplatform
• Коллекции во Flutter
•

•

•

•

•

•

•

•

•

•


• Прямая без препятствий. От чего и зачем нужно защищать мобильные приложения
• TutOn: Нежданное путешествие, или как мы в 11 классе сделали мобильное приложение для помощи учителю
• Мобильная разработка: что происходит на рынке и что важно знать в 2025 году
• Путь UX-исследователя — эмпатия vs аналитика, поиск респондентов и происшествия на интервью
• От Junior до Senior: требования к грейдам и здоровье как скилл
• Как проводить собеседования интересно и продуктивно
• Зачем программисту знать лямбда исчисление
• Мок интервью на позицию СТО
• Публичное собеседование по System Design
• Мобильная инфраструктура. Взгляд изнутри
•

•

•


• Об «умных» молотках и навязчивых приложениях
• Skich запускает альтернативный магазин приложений для пользователей iOS в ЕС
• Короткометражные драмы отбирают пользователей у большого стриминга
• Самописная платформа для A/B-тестирования Trisigma: что она умеет и какую пользу способна принести бизнесу
• Разработчик Pokémon Go компания Niantic продаст игровой бизнес Scopely
• От legacy к успеху: как мы переработали главную страницу приложения М2 и увеличили MAU
• Как приложение «Погладь траву» собрало 30К установок и попало в топ App Store

• Градиентный бустинг для чайников
• Практическое руководство по выбору между ChatGPT, Claude, Gemini, Grok и Perplexity
• Тёмный лес разработки для нестандартных устройств: как войти и не заблудиться
• На Hugging Face открылся курс по ИИ-агентам
• OpenAI запустила API для создания автономных агентов и SDK для их оркестровки
• Глобальные поставки смарт-часов в 2024 году впервые снизились
← Предыдущий дайджест. Если у вас есть другие интересные материалы или вы нашли ошибку — пришлите, пожалуйста, в почту.