Мобильная разработка за неделю #577 (24 февраля — 2 марта)
Подписывайтесь на мой Telegram-канал Mobile Insights, где еще больше материалов для мобильных разработчиков.
iOS
• Протокол Animatable: укрощение анимаций в SwiftUI
• Task.sleep () и Task.yield (): в чем разница
• Переходим на SwiftUI
• Задачи с собеседования: LeetCode — Перестановка в строке
• SharingGRDB: A SwiftData Alternative
• Using SwiftUI«s Improved TabView with Sidebar on iOS 18
• Quick guide on home screen quick actions for SwiftUI
• From Natural Language to Swift Action: Demystifying LLM Function Calling
• Music recognition with ShazamKit
• How I Slashed My Xcode Build Times by 85%
• Tapping on Stack Views
• How to write Metal Shaders on iOS
• Equatable Vs Comparable Protocols in Swift
• Visual Studio Code setup for iOS development with Copilot
• An Ode to Swift Enums: The View Models That Could
• SwiftUI: Peer-to-Peer (P2P) with Multipeer Connectivity Framework
• SwiftUI: Locate Peers with Nearby Interaction Framework
• Simple Modularization setup for a New App
• What«s new in Swift 6.1?
• Symmetrical and asymmetrical transitions in SwiftUI with the Scroll Transition modifier
• Apple Books Scroll Animation — Complex UI — SwiftUI
• Power of new Scroll APIs — Custom Scroll Indicators — SwiftUI
• Mastering Images in SwiftUI — Assets, Bundles, Remote URLs & Effects
• SwiftUI Ripple Transition Effects — Custom Transitions
• Trie Data Structure Explained in Swift: The Ultimate Guide to Efficient Search
• Capture & Share SwiftUI Views as Images with ImageRenderer & ShareLink
• Xcodebuild.nvim — разработка iOS-приложений в Neovim
• Yams — парсер YAML для Swift
Android
• Остерегайтесь READ_MEDIA_IMAGES
• Как оживает смартфон: Android на старте
• Эффективный бэкграунд: организация стабильной фоновой работы в связке двух мобильных медтех приложений
• Как я прототипирую цвета в Jetpack Compose
• Android на Snapdragon 8 Elite будет поддерживаться 8 лет
• Производительность sequence, stream и collection в JVM
• Непростые вопросы про Kotlin Coroutines
• Flat approach for tabbed Navigation in Jetpack Compose
• Gradle Plugins Best Practices
• Handling Token Expiration in Retrofit: Automatic Token Refresh with OkHttp
• Reliable Timekeeping with the TrustedTime API in Android
• Why Your Network Calls on the Main Thread Aren«t Crashing your Android App
• Versioning your Android app like a Leetcode problem
• Deploy Android App on Play Store using Github Action
• Making basicMarquee-Modifier More Accessible
• Localization in Jetpack Compose
• Server-Driven UI with Compose Remote Layout
• Advanced Coroutines Patterns
• Android System Design: Building a Stopwatch from Handlers to Coroutines (MVVM + Flow)
• Single State Fields VS. State Data Class In Your ViewModel — What«s Best?
• Junie — The New AI Coding Agent from JetBrains — Can it build a Compose Desktop app?
• Video Player App — приложение для просмотра видео на MVVM и Kotlin
• Lucky Wheel View Compose — колесо удачи на Compose
Кроссплатформа
• Common mistakes with TextFormFields in Flutter
• Kotlin Multiplatform Scalability Challenges on a Large Project
• Flutter 3.29 and Dart 3.7: Making Our Dev Lives Even Easier
• Customize Flutter DataGrid for Enhanced Data Visualization
• How stable is Flutter?
• Flutter. Gradient cheat sheet
• Mastering Native Bridging in Flutter: A Deep Dive
• Flutter Deep Linking: A Complete Guide
• BikeShare — шаринг велосипедов на Kotlin Multiplatform
Разработка
• Полтора года с телефоном на «Авроре»: плюсы и минусы российской ОС с точки зрения обычного пользователя
• Уродливый код и глупые вещи
• Смартфон «из коробки» — большие риски маленького гаджета
• Сколько денег теряет бизнес из-за плохого дизайна? Мы посчитали
• Чем полезен Server Driven UI
• 5 лет опыта ИЛИ 5 раз по 1 году?
• Протестировал две российские системы работы с кодом. Что у меня (не) получилось
• Сделай удобно: подборка UI/UX-кейсов из цифровых и нецифровых продуктов
• Самые высокооплачиваемые вакансии февраля в сфере разработки приложений
• Архитектурный надзор и анализ трейсов в Авито
• Логистические системы — Логистика, доставка, трекинг посылки
• Minecraft from scratch
• 5 Code Review Anti-Patterns You Can Eliminate with AI
• 8 best open source analytics tools you can self-host
• Cafe Maria. A functional cooking sim game played entirely in MariaDB.
• How I Review Code As a Senior Developer For Better Results
• Code, Sweat, and Tears: Why Imposter Syndrome Never Really Leaves Developers
• Kubernetes and EKS for Beginners — Crash Course
Аналитика, маркетинг и монетизация
• Индекс цифрового рынка за 4 квартал 2024 года: цифровая экономика завершает 2024 год с новыми рекордами
• Фил Шиллер рассказал, что высказывал опасения по поводу комиссий App Store
• RuStore: молодые люди могут тратить в мобильных играх больше 2000 рублей в месяц
• Маркетологи в мобайле: Вячеслав Филимонов (директор по маркетингу Ёбидоёби)
• Дуо умер, да здравствует Duolingo
• Вопреки распространенному мнению, рынок приложений для знакомств продолжает расти — на 10% в 2024 году
• От MVP до приложения с миллионной аудиторией. Кейс развития мобильного приложения для ритейлера Kassir.ru
• Мышление аналитика: как цифры превращаются в деньги
• Apple объявила об инвестиционном плане на $500 млрд и 20 тысяч рабочих мест в США
AI, Устройства, IoT
• Встречаем YandexGPT 5 — в Алисе, облаке и опенсорсе
• Gemini Code Assist стал доступен для всех
• Распознавание текста в банке: трудности и решения
• Искусственный интеллект в ритейле: как он предсказывает вашу следующую покупку в приложении
• Получение SMS через SMPP Exolve на ESP8266
• Собираем прошивку NapiLinux и Raspberry Pi OS для микрокомпьютера с помощью Yocto
← Предыдущий дайджест. Если у вас есть другие интересные материалы или вы нашли ошибку — пришлите, пожалуйста, в почту.