Мобильная разработка за неделю #528 (26 февраля — 3 марта)
В новом выпуске возврат от SwiftUI к UIKit и машинное обучение на устройствах, стабильная Iguana и гибридный интерфейс в Wear OS, деплой Flutter-приложений, сложный повтор в мобильном календаре, весенние маркетологи в мобайле и многое другое. Подключайтесь!
Подписывайтесь на наш Telegram-канал Mobile Insights, где еще больше материалов для мобильных разработчиков. А в IT Insights — много об интересном коде и технологиях.
iOS
• Почему Ollie перешел от SwiftUI к UIKit
• Как работает async/await в Swift
• Помощь на старте: 10 полезных ссылок для начинающих iOS-разработчиков
• Машинное обучение на устройствах с помощью MLX и Swift
• Task и structured concurrency в Swift
• SwiftUI уроки (часть 2)
• Apple опубликовала план развертывания подписей для SDK
• Пишем текстовую RPG
• Setapp от MacPaw станет первой альтернативной платформой для iOS в Европе
• Еврокомиссия расследует отказ Apple от PWA
• Минцифры узаконит установку сторонних приложений на iOS
• Поваренная книга SwiftUI: создание и доступ к переменным окружения в SwiftUI
• Себестоимость Vision Pro составляет около $1500
• How to delay an animation in SwiftUI
• Modding Plugins back into Xcode
• Designing APIs with typed throws in Swift
• Embedding a privacy manifest into an XCFramework
• Picture in Picture Cheat Sheet
• How to improve iOS build times with modularization
• Discovering iOS memory leaks: A case study with Firefox app
• Making Customizable SwiftUI Components
• SwiftUI Got Isolation Wrong
• How to determine where tasks and async functions run in Swift?
• Twitter vs. X
• Finding a balance while coding
• What«s the buzz about the 2024 OWASP Mobile Top 10 changes?
• Gemini AI API implementation in iOS
• How to use VariadicView, SwiftUI«s Private View API
• Third-party libraries acknowledgments using a Settings bundle
• Discovering Swift Async Algorithms package
• Working with dates and Codable in Swift
• Swift Predicate: Usage, Composition, and Considerations
• Exploring the SwiftUI«s Grid View
• How to Create 3D App Icons for visionOS
• How to easily mock ANY network call with URLProtocol
• Elastic Custom Segmented Control — SwiftUI
• Custom SwiftUI Calendar
• VerticalSplit: контейнер SwiftUI с двумя View с настраиваемым разделением
• EmojiKit: работа с эмодзи в Swift
• MLX: фреймворк машинного обучения для Apple Silicon
Android
• Прокси-сервер для Android на Go
• Android Studio Iguana стала стабильной
• Осознанная оптимизация Compose 2: В борьбе с композицией
• Android Lint: оптимизируем проверку мердж-реквестов
• Google представил гибридный интерфейс в Wear OS
• Что такое гибридный интерфейс в Wear OS
• Прекратите использовать тестовые теги в Jetpack Compose
• Настраиваем кросс-обновления Android-приложений между сторами
• Как писать приложения под Android
• Наш опыт внедрения Compose в большой проект
• Многомодульность: что это такое?
• Жизнь инди в Google Play
• Разработка новостного приложения. Часть 2
• Google TV обновляет домашний экран
• Navigation in Jetpack Compose
• Ins and Outs of Kotlin Variance
• Container transform animation with Jetpack Compose
• Easily add document scanning capability to your app with ML Kit Document Scanner API
• Preferences Datastore is slow, but you should still choose it over Shared Preferences
• Overlapping Lists — Custom Composable Vs RecyclerView
• PriorityDispatcher — Priority based Dispatcher in Kotlin Coroutines
• How a Bubble Chat Increases Up to 90% of Seller«s Read Speed
• How to Pass Arguments to a HiltViewModel from Compose
• Comprehensive Guide To Kotlin Context Receiver
• Jetpack Compose: Strong Skipping Mode Explained
• Kotlin inline value classes explained
• Android: Scoped Storage
• Fun with shapes in Compose
• Snapshot Testing Libraries for Android: Paparazzi vs Shot
• Jetpack Compose Hacks: Top 3 Secret Jetpack Compose Modifiers
• Think of current Android Architecture from UseCase
• The Ultimate Package Structure Guide for Android Developers
• Modern Dependency Management With Version Catalogs
• Modularization at scale with Alireza Tizfahmfard
• Decompose: BLoC с навигацией и подключаемым UI
• Lingshot: правильная архитектура Android-приложения
Кроссплатформа
• Деплой Flutter-приложений и особенности платформ
• Пути внедрения поддержки скриптов в Dart/Flutter
• Самый простой CI/CD пайплайн для Flutter приложения с Codemagic. Часть 2 + Часть 1
• Организация данных на экране во Flutter
• Разработка интерфейса во Flutter
• Работа с виджетами во Flutter — 2 часть
• Build a content recommendation app with Flutter and OpenAI
• Flutter«s 2024 roadmap
• Mastering Responsive UIs in Flutter: The Full Guide
• Flutter vs. React Native: Which one to choose for 2024?
• Supercharge Your Flutter Apps with Google«s App Architecture
• The missing guide to deep linking in Flutter apps
Разработка
• «Не заставляйте меня вводить цифры»: реализуем сложный повтор в мобильном календаре
• Проектируем системный дизайн Spotify
• Диплом специалиста ИБ. Часть №4 — Мобильное приложение Smart Connect
• Топ 5 книг для синьора
• Как мы пытались растить выручку через персонализацию
• Самые высокооплачиваемые вакансии февраля в сфере разработки приложений
• VK расширяет программу оплачиваемой стажировки для молодежи
• Agile Cult
• Engineering is more about people than tech
• Beware the parasite engineer
• Crafting a Custom Sports Activity Service with OpenAI and Node JS
• Software engineering practices you should probably be following in 2024
Аналитика, маркетинг и монетизация
• Маркетологи в мобайле (Spring Edition): Ярослава Адаменко (М.Видео и Эльдорадо)
• Маркетологи в мобайле (Spring Edition): Ольга Бигбашева (Rendez-Vous)
• Бывшие инженеры Twitter создают Particle, читалку новостей с ИИ
• Liveliness — сообщества для любителей спорта
• Кейс: разметка приложения с нуля на конкретном примере
• Navigating Ramadan 2024: Insights and strategies for app marketers
• Bumble looks to revive its friendship-focused BFF product in wake of dating app downturn
• SeatGeek«s new tools help fans resell tickets at the best price
AI, Устройства, IoT
• Как создать простой LoRa мессенджер: обмен зашифрованными текстовыми сообщениями между устройствами без интернета
• Исследователи обнаружили в Hugging Face вредоносные модели ИИ
• Умный дом с котом: мой опыт автоматизации домашней рутины
• Разработка производительного распознавателя автономеров для edge-устройств
• Осторожно, IoT: как бытовая техника становится проблемой для компаний
• Открытая модель StarCoder 2 работает на обычных GPU
• GitHub открывает доступ к Copilot Enterprise
• Apple закрыла проект создания электромобиля
• Qualcomm открывает AI Hub
• Machine Learning in 2024 — Beginner«s Course
← Предыдущий дайджест. Если у вас есть другие интересные материалы или вы нашли ошибку — пришлите, пожалуйста, в почту.