В нашем новом дайджесте подготовка к собеседованию и оптимизация для сетевой доступности, тестирование с Robolectric и “подводные камни” Jetpack Compose, плохие MVx архитектуры и даже конец программирования, каким мы его знаем.

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



iOS

• Хочу в iOS-разработку: к чему готовиться на собеседовании в продуктовую команду
• Оптимизация приложения для сетевой доступности
Воскрешаем старый проект с помощью ChatGPT
• Проектирование с ограничениями — Live Activity и Dynamic Island
• Модульное тестирование в iOS: все, что надо знать. Часть 1
• Правильная поддержка Apple Silicon: как избежать проблем при апгрейде с Intel (x86_64) на Apple (arm64)
• Ряд Фибоначчи и Мемоизация с примерами на Swift языке
• Combine: часть 2. Вершина айсберга
• Microsoft внедряет поддержку iOS в новой версии Phone Link for iOS
• В iOS появится трекер эмоций
• Обработка сетевых вызовов в Swift с помощью Moya
•  Building Robust iOS User Interfaces with MVVM: A Guide for SwiftUI and UIKit Developers
•  Tuist and XcodeGen
•  Domain-Language-Based Systems in Swift
•  How to Switch Your iOS App Delegate for Improved Testing
•  How to configure Build Scripts in Xcode
•  Create a Horizontal Carousel With ARKit, SceneKit, and SwiftUI
•  Selectable Tags in SwiftUI
•  How to Use UIHostingConfiguration to Integrate SwiftUI Views into UIKit Apps
•  Async/Await and MainActor Strategies
•  Simplify Time Comparisons in Swift with RelativeDateTimeFormatter
•  Combine from A to Z
•  PhotosPicker in SwiftUI
•  Text to speech and speech to text synthesizer using Swift
•  Developer guide on App Clips for iOS
•  Skip typing your login credentials manually with Xcode breakpoints
•  SwiftUI Form Styling
•  Foundation Package Preview Now Available
•  MetricKit: A boon for iOS framework developers to get Crash Logs
•  SwiftLint in Depth
•  My experience building an iOS App with the help of Chat GPT-4
•  OpenAI: работа с OpenAI API в Swift
•  CardinalKit: быстрая разработка приложения для здоровья

Android

Circuit-фреймворк для Jetpack Compose и тестирование с Robolectric
• Один «подводный камень» в Jetpack Compose и как его можно исправить
• 9 полезных функций расширения Kotlin
• Jenkins + Android
• Вопросы и ответы для собеседования по Kotlin. Часть 3
• 3-дюймовый смартфон: тестируем приложения как PRO
• Объекты данных в Kotlin
•  Discovering Material 3 for Android — ListItem
•  How we built user interaction tracking for Jetpack Compose
•  Kotlin revolutionary announcement
•  Encapsulate your @Composable functions
•  Top 5 Useful Advanced Programming Techniques in Android
•  Problem solving in Compose Text
•  Kotlin Coroutines’ best practices
•  Pragmatic strategies on Jetpack Compose migration
•  Typed Error Handling in Kotlin
•  Domain Driven Android — Building a Model which makes sense
•  Photo Picker Everywhere
•  How To Set A Gradient Background In Jetpack Compose
•  How to use FlowLayout
•  Android Studio Hedgehog Canary 1 now available
•  Building a Customizable Messaging Platform
•  Mastering Side Effects in Jetpack Compose
•  How to leverage functional programming in Kotlin to write better, cleaner code
•  Code Better, Build Faster: Writing Maven Plugins With Kotlin
•  Android MapView with clustering and dynamic images in markers
•  Thumb-Key: клавиатура для больших пальцев для Android
•  Animated Navigation Bar: красивая панель навигации
•  FlorisBoard: открытая клавиатура для Android

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

•  Save Your Time with CodeGPT Code Generation in Flutter
•  Something Big Is Happening At Flutter Forward
•  Color Schemes – Figma to Flutter Design Implementation
•  Create beautiful user-interface in Flutter apps using ant-design
•  Full-stack Dart with Flutter, Supabase and Dart Edge
•  16 ideas to improve your Flutter skills (advanced roadmap)

Разработка

• Почему MVx архитектуры всегда получаются плохо
• Почему я никогда не стану Senior-разработчиком в Amazon
• Быть или не быть начальником. 3 вопроса, которые я не задал себе, прежде чем пойти на повышение
• Конец программирования, каким мы его знаем
• Selenoid: запускаем Appium UI-тесты на Android. Часть I
• Виджеты: Android против iOS
• Harmony, гармония или что там с безопасностью в HarmonyOS
• Backend Client как универсальный инструмент для UI-автотестов
• Гайды, глоссарии, редполитика. С чего начать?
• Podlodka #316: зачем айтишнику уметь писать?
• Podlodka #317: делегирование
• Replit, программирование с ИИ, стал единорогом
• Яндекс Практикум поможет бизнесу быстро растить IT-кадры
•  “It’s Not You, It’s Me”: Improving the Quality of Deliverables Through an Effective Code Review Process
•  How we managed to modernize the Booking.com app from the inside and out
•  Bringing Dark Mode to our News Apps
•  Aesthetic Usability: How Beauty Influences User Experience
•  Product Teardown — 6 Product lessons from BeReal including user education

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

• Как индюки используют Твиттер для продвижения своих игр: лайфхаки и советы
• Google тестирует новый рекламный слот в поиске Play Store
• Apple раскрыла количество пользователе App Store в Европе
• Clubhouse сократит более 50% сотрудников
• Как с помощью ретаргетинга снизить стоимость повторного вовлечения клиента в мобильное приложение: кейс «Магнит Доставка»
• Snapchat переживает всплеск 1-звездочных отзывов после внедрения My AI
• Epic Games проиграла апелляцию в деле против Apple
• В России появилось первое музыкальное приложение для малого бизнеса Cubic Play
• Reddit поставил рекорд по дневной выручке в App Store
• Приложение Apple Music Classical стало №1 в первый же день, но есть ли реальный спрос?
• Как мы с помощью Mid Journey повысили удержание пользователей в приложении на 43%
•  7 examples of product-led growth in mobile apps

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

• Это не чат, это GigaChat. Русскоязычная ChatGPT от Сбера
• Разработчик использовал API для предоставления свободного доступа к GPT-4
• Как и зачем Rostic’s внедряет телеметрию бизнес-процессов в ресторанах
• Собака лает — ветер носит, или решил ли Bark синтез речи?
• Тестируем нейросети для генерации изображений
• $7 млн в посевном раунде: AirOps — интеграция LLM для предприятий
• Hugging Face выпускает открытую версию ChatGPT — HuggingChat
• Google Bard поможет вам в написании кода и создании функций для Google Sheets
•  How To Create A Doc ChatBot That Learns Everything For You, In 15 Minutes
•  The Dark Side Of Prompt Engineering

Предыдущий дайджест. Если у вас есть другие интересные материалы или вы нашли ошибку — пришлите, пожалуйста, в почту.