Мобильная разработка за неделю #496 (3 июня — 9 июля)

Моя цель - предложение широкого ассортимента товаров и услуг на постоянно высоком качестве обслуживания по самым выгодным ценам.
В нашем новом дайджесте исследуем вопросы SOLID и архитектуры, разбираем задачи с собеседований и строим мосты, говорим на разрабском, создаем системы, закладываем баги, учимся у Dolingo и многое другое!

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



iOS

• SOLID в Swift. Простое объяснение с примерами для начинающих
• .xcstrings в Xcode 15
• Создание интерактивного виджета с помощью App Intents
• Использование XCFramework в крупном iOS-проекте, или Как ускорить сборку в 2 раза
• SwiftUI для большого B2C-продукта
• По слухам, Apple сократила заказ Vision Pro
• Следующие AirPods смогут проверять слух и температуру
•  iOS 17 VisualEffect & ScrollTransition APIs — Circular Carousel Slider
•  iOS Dev Job Interview — Must Know Topics
•  Swift Variadic Parameters
•  Swift Observation from Scratch
•  SwiftUI: Trailing label TextField
•  Embracing CloudKit
•  SwiftUI Data Flow 2023
•  Create an Interactive Widget Using App Intents
•  Async Animations in SwiftUI
•  DI in SwiftUI
•  Animate SF Symbols with symbolEffect
•  Cleaner Views: Clean Code in SwiftUI
•  10 More Deadly SwiftUI Mistakes and How to Avoid Them
•  Slow architecture in Swift
•  iOS 17 @Observable and the Observation Framework
•  App Intents Spotlight integration using Shortcuts
•  CollectionOfOne in Swift
•  Demystifying Opaque Types in Swift
•  A Deep Dive Into Observation: A New Way to Boost SwiftUI Performance
•  Data-Oriented-Design — A Swift Introduction
•  Mastering Swift Foundation Formatter API. Custom Format Styles
•  SwiftUI apps at scale
•  Swift Observation from Scratch
•  Difference Between Implicit and Explicit Animations in SwiftUI
•  The Ultimate Guide to Building SwiftData Applications
•  Billboard: красивая и безопасная реклама
•  iOS Learning Materials: обучающие материалы по iOS-разработке

Android

• Как создавать архитектуру Android-приложений: глубокое погружение в принципы
• Настраиваем CI/CD для тестовой инфраструктуры Android
• Разбор небольшого приложения с анекдотами
• Разбор тестового задания на позицию Android Developer
• Я.Субботник по Java-разработке
• А это можно запустить в фоне?
• Мой офис. Как открываются документы на смартфоне
• Modern MVI и MVVM+ со всех сторон в 2023
• Lobzik: полуавтоматическая модуляризация Android-проекта
•  Foreground Services — Android Basics 2023
•  Broadcasts & Broadcast Receivers — Android Basics 2023
•  What’s new in Kotlin 1.9.0
•  Migrate RecyclerView to Lazy list
•  Two-Way Communication Between Fragments in a Multi-Module Android Project while maintaining loose coupling
•  Animated action menu
•  Build Interactive Live Streaming Android App with Video SDK using Java
•  Exploring SharedFlow in Kotlin: Understanding tryEmit() and the Importance of Buffers
•  Paging in Android Jetpack compose: from caching data with Room to displaying in Lazycolumn
•  Reduce Boilerplate When Running Kotlin Tests
•  Build a Simple Sort and Filter Screen in Your Android App
•  Efficient Ways of Using Location Services in Kotlin Android Apps
•  Creating and publishing your own Android library in Kotlin
•  The beauty of Kotlin type system
•  TextInputLayout Censoring with Password-like Method
•  Experimenting with Android Studio Bot
•  Unlocking the power of Jetpack Compose, Fragments, Stateflow, and ViewModels: A Comprehensive Guide
•  A flexible, modern Android app architecture: complete step-by-step
•  Native UI and multiplatform Compose with Redwood
•  How to build a Clean SSEClient Flow
•  Implementing Single Source of Truth in Android
•  Migrating from Android API level 30 to 31/32 or App Crashing After Updating Target SDK
•  Okio: I/O библиотека для Android, Java и Kotlin Multiplatform
•  Amethyst: клиент Nostr для Android
•  Paraphrase: типобезопасные форматеры для строк

Кроссплатформа

• Метод setState() во Flutter может работать не так, как вы это представляете
• Строим мосты: подключение зависимостей с Cocoapods в Kotlin Multiplatform Mobile
• Колесо сансары в поиске решения бага «белый экран» в SPA приложении на React
•  How to build a collision-based game using Flutter and Flame
•  Shorebird: CodePush & Over-the-Air Updates for Flutter Apps
•  Explore Animated Loader In Flutter
•  Profiling React Native Apps With iOS and Android Tools
•  Introducing LangChain.dart
•  Implementing CI/CD for Jetbrains Compose Multiplatform Android and iOS Apps using GitHub Actions
•  Optimising Page Load Times in Flipkart Mobile App
•  The Complete Guide to Deploy Flutter Builds Using App Center
•  4 Flutter Open Source Projects From Which You Can Learn A Lot! (2023)
•  Error Handling In My Flutter App
•  How to Cluster Markers with FlutterMap
•  How to build a collision-based game using Flutter and Flame
•  From Hacking to Shipping: Kotlin Multiplatform Mobile at Hootsuite

Разработка

• Скажи что-нибудь на разрабском, Figma
• Чтобы стать великим разработчиком, нужна система
• Какие баги мы заложили в мобильный банк на PHDays 12: разбор конкурса $NATCH
• Определить и найти. Разработка алгоритма поиска изменений с Мap-ами и хешами
• Делаем волшебство в России: история о создании APM для «ВкусВилл»
• Podlodka #324: 3D-графика. Почему игры тормозят?
• Какую работу, компанию или продукт выбирают продакты
• Зарплаты мобильных разработчиков по данным Хабр Карьера
• Самые высокооплачиваемые вакансии июня в области разработки приложений
• Бесплатный курс по основам Continuous Delivery
• Вероятно Twitter заDDOSил сам себя
•  Moneyball for Software Teams – An Imperfect Heuristic for Quantifying Dev Performance
•  The Story of Samsung’s OneUI
•  Fight Unplanned Work, the Silent Killer of Projects
•  We Just Hired a “Messy Coder”. Here Are My Fears
•  Stay Technical While Leading Your Team
•  The hardest part of building software is not coding, it’s requirements
•  A Case: How To Design A Medical App
•  5 Mac accessories for developers
•  Accelerating Success: Decoding the Weekly Sprint Velocity of the International Mobile Team

Аналитика, маркетинг и монетизация

• Как Duolingo подталкивает пользователей к premium — 5 уроков крупнейшего образовательного приложения
• Threads запустился в App Store и Google Play
• Spotify окончательно отказался от покупок через App Store
• Клуб миллионеров в App Store — 503 приложения зарабатывает $1 млн или больше
• Как отличить хорошего аналитика от плохого?

AI, Устройства, IoT

• Kaggle — практическое изучение Big Data. Что это за платформа, и как она работает
• Generative AI. Как программистам держать нос по ветру
• Device Twins и подвеска автомобиля: найдите 10 совпадений + Digital Twins и Device Twins: в чем разница и что общего?
• ChatGPT использовали для рассказов эротических историй
• OpenAI объявляет о всеобщей доступности API GPT-4
• Бесплатный курс по Natural Language Processing (NLP) от The Hugging Face
• $2 млн: RoboDeck — робот для обслуживания веранд и палуб
•  Building Real-time Machine Learning Foundations at Lyft

← Предыдущий дайджест. Если у вас есть другие интересные материалы или вы нашли ошибку — пришлите, пожалуйста, в почту.
Источник: https://habr.com/ru/companies/productivity_inside/articles/746930/


Интересные статьи

Интересные статьи

Предлагаем вашему вниманию подборку с ссылками на новые материалы из области фронтенда и около него.
Предлагаем вашему вниманию подборку с ссылками на новые материалы из области фронтенда и около него.
Исследователи использовали для анализа данные сразу 32 компаний, которые входят в ТОП-1000 российских онлайн-магазинов, составленный по итогам продаж 2020 года. Основной ...
Привет, Хабр! Вышло первое крупное обновление GoLand 2021.1. Традиционно расскажем о новом в релизе и покажем, как пользоваться новой функциональностью. Если совсем корот...
Юбилейный DevConfX пройдет 21-22 июня в Москве. Как всегда — Вы решаете, кто попадет в программу секции Backend — голосуйте за интересные доклады, список заявок под катом. ...