Дайджест интересных материалов для мобильного разработчика #372 (23 — 29 ноября)
В этом выпуске — сравнение «карт» iOS 1 и 14, паяльник для разработчиков, базовые концепции и базовые ошибки, продуктовые исследования и тренды рынка мобильных приложений в итоговом отчете за 2020 год. Подключайтесь!
Этот дайджест доступен в виде еженедельной рассылки. А ежедневно новости мы рассылаем в Telegram-канале.
iOS
• (+10) Как добавить 3D в iOS приложение c помощью SceneKit
• (+7) SwiftUI 2.0: будущее декларативно
• (+4) Интеграция CI/CD для нескольких сред с Jenkins и Fastlane. Часть 3
• 98% приложений в App Store зарабатывает 8% всех денег
• Сравнение iPhone OS 1.0 с iOS 14 с помощью карт
• Каникулы App Store: с 24 по 27 декабря
• Следует ли мне использовать SwiftUI в проде? Примеры кода, который поможет вам принять решение
• Сборка и запуск Telegram-iOS в симуляторе Xcode 12.x
• WebSockets и Swift: инженерные задачи на стороне клиента
• Имитация плохой сети в iOS
• До свидания, AppDelegate! Жизненный цикл приложения SwiftUI
• Привет (новый) мир! — Жизнь и разработка на Apple Silicon M1
• Почему хорошему Swift-разработчику не нужно знать множество шаблонов
• SwiftUI-Animations: библиотека анимаций
• HHCustomCorner: скругление углов
Android
• (+49) Я месяц провел в MIT и понял — даже софтверным инженерам не стоит забывать про паяльник
• (+20) TV Box или Smart TV?
• (+10) Корутинная эволюция в Kotlin. Чем отличаются Channels, Broadcast channels, Shared flows, State flows
• (+10) Магическая шаблонизация для Android-проектов
• (+9) Kotlin FP: моноиды и сортировки
• (+9) Избегаем поддельных шрифтов в Android
• (+6) Koin — библиотека для внедрения зависимостей, написанная на чистом Kotlin
• (+6) Валидация элементов формы textInputLayout в Android с помощью связывания данных
• (+4) Как сделать цветные тени в Android с градиентом и анимацией
• (+1) Тестируем Android-приложение правильно
• Android Broadcast: разработка под устройства
• Основы Jetpack Compose: Урок №1
• Android Runtime (ART) станет Mainline-модулем в Android 12
• Android сможет быстрее обновлять эмодзи
• Jetpack Compose: ViewModels
• Обработчики эффектов Jetpack Compose
• Практическая работа с сетью для разработчиков Android
• Простая разработка под Android с использованием Simple-Stack
• Android Vitals — профилирование запуска приложения
• Сегментация изображений в Android с Fritz AI
• Kotlin на 60FPS: Kotlin медленный?
• Переход с Dagger на Hilt — стоит ли?
• Android Architecture Components — сделайте приложение своей мечты!
• Простая кастомная клавиатура с InputConnection
• NoNameBottomBar: нижнее меню для Android
• My Memory: игра на запоминание на Kotlin
Разработка
• (+28) Как я стал разработчиком игр для мобильных телефонов
• (+17) Как и почему мы стали делать UI в Figma вместо Photoshop
• (+16) Снятся ли телефонам с HMS электроовцы? Обзор функций и возможностей инструментов AI от Huawei
• (+15) Конечные автоматы на страже порядка
• (+11) Базовые концепции Unity для программистов
• (+10) Math Invasion. Мой долгострой
• (+8) Расширяемая и удобная в сопровождении архитектура игр на Unity
• (+7) Разработка мобильных приложений на Python. Создание анимаций в Kivy. Part 2
• (+7) Тестирование игр
• (+5) Как устроена система тестирования платежного ядра мобильного приложения
• (+3) MMORPG больше не в Telegram — Swift и Kotlin — Первый большой проект — Часть 1
• (+2) Качественное тестирование ПО
• (+1) Автоматизация тестирования приложений Salesforce
• 15 ошибок в программировании, которые совершал каждый разработчик
• Дизайн приложений: примеры для вдохновения #23
• Что такое Разработка через тестирование (Test Driven Development)
• Рабочий день геймдизайнера
• Итоги конкурса Games Cup 2020
• Зачем нужно знать всякие низкоуровневые вещи
• UX и «Точка». Как устроены продуктовые исследования
• Разработка крупных приложений на Xamarin: в чем выгода
• 6 типов проектов, которые должен попробовать каждый разработчик
• Полный курс Firebase Authentication и Flutter 2020
• 5 улучшений, которых заслуживает App Store — исследование UX
• Микровзаимодействия: суперсила дизайнеров
• Глассморфизм в пользовательских интерфейсах
• Flutter vs Kotlin Multiplatform: руководство на 2021 год
• Управление идентичностью разработчиков в автономных командах
• Flutter может и не станет Next Big Thing, но Kotlin Multiplatform никуда не денется
• Масштабирование CI для мобильных инженеров
• 5 простых советов по написанию чистого кода
• Как я стал более ценным программистом за 6 месяцев (и как вы тоже можете)
Аналитика, маркетинг и монетизация
• (+27) Внедряем кросс-платформенные пуш-уведомления: дополнительные возможности
• (+6) Сравнение аналитических систем для мобильного маркетинга
• Тренды рынка мобильных приложений 2020 — отчет Liftoff
• make sense podcast: О механизмах внешней и внутренней мотивации и их применении в геймификации
• LOVEMOBILE #09: NGrow.ai
• Хочу в геймдев #16: Локализатор игр
• Podlodka #191: маркетинг
• Bald Dating — дейтинг для лысых
• ByteDance запускает магазин мобильных игр и собственное издательство
• AudioMob получил $1.5 млн. на аудиорекламу в играх
• Xesto: 3D сканирование стоп
• Реклама в iOS 14: как получить согласие пользователя — руководство Adjust
• 24 полезных совета для правильного управления репутацией мобильного приложения
AI, Устройства, IoT
• (+57) Трансформеры в Поиске: как Яндекс применил тяжёлые нейросети для поиска по смыслу
• (+6) От хорошей работы не только волки дохнут, но и движки распознавания возникают
• Видео PyTorch Virtual Developer Day
< Предыдущий дайджест. Если у вас есть другие интересные материалы или вы нашли ошибку — пришлите, пожалуйста, в почту.