В этом дайджесте рассматриваем новые подходы к спискам и коллекциям, вопросы автогенерации музыки и написание безболезненных unit-тестов, спиннеры и иконки, рост приложений, вентиляторы, генерацию идея для игр и многое другое!

Этот дайджест доступен в виде еженедельной рассылки. А ежедневно новости мы рассылаем в
Telegram-канале.
iOS
•
Связанные неявные выражения в Swift 5.4
•
Подходы к спискам на UICollectionView
• В App Store обнаружили казино, которые притворяются детскими играми
• Apple анонсировала конференцию Spring Loaded 20 апреля
• Apple работает над комбинацией Apple TV и HomePod
• Apple не выпускает iMessage на Android, чтобы пользователи не уходили с iPhone
•
Более эффективный/быстрый способ получить средний цвет изображения
•
Представляем Коллекции в Swift
•
Миграция вашего приложения на Swift Package Modules
•
Как вложить UITableView в UICollectionViewCell и сделать как у Trello
•
Создание, анимация и настройка кругов в Swift
•
5 советов по написанию чистого Swift-кода
•
Встроенный инструмент рефакторинга Xcode великолепен
•
Объяснение каждого протокола SwiftUI
•
UIKit Live Preview для UIViewController и UIView
•
Руководство по iOS-архитектуре MVVM+Coordinators
•
Создание нативного обмена сообщениями через Firebase с помощью SwiftUI
•
CollectionViewPagingLayout: красивые UICollectionView
•
FDWaveformView: визуализация звука для iOS
•
3D Flip menu: трехмерное меню
Android
•
Как портировать SDK Flutter на ТВ-приставку для разработки и запуска приложений Android TV
•
Практическое использование автогенерации музыки
•
In-App-Review. Фильтруем негативные отзывы
•
Пишем unit тесты так, чтобы не было мучительно больно
•
Стилизуя нестандартно
•
Реализация Undo в Snackbar на Jetpack Compose
• Coroutines: хаотичное изучение
•
Android Jetpack Compose: простая анимация
•
Stateful Android приложение с MVI (MODEL — VIEW — INTENT)
•
Насколько подробно вы можете ответить на эти вопросы как Android-разработчик?
•
Compose CameraX в Android
•
Использование DataStore с сериализацией Kotlin
•
Кеширование в процессе Android-сборки
•
Пример против MVI архитектуры
•
Современный способ передачи данных между фрагментами
•
Android Tool: упрощение работы с adb и fastboot
•
BlurShadowImageView: красивые тени для изображений
Разработка
•
Повышаем качество кода с Dart Code Metrics
•
Препродакшн игровых проектов: как оценить объем работ на старте и не сгореть к дедлайну
•
Cordova. Опыт Enterprise-проекта
•
Уродливый API
•
Судно на воздушной подушке на Unity 3D
•
История одного личного кабинета, который помог нам сделать 15 000 курьеров и сборщиков немного счастливее
•
Регдоллы на Unity 3D
•
Русские программисты не сдаются
• Podlodka #211: Haskell
• Рабочий день разработчика гипер-казуальных игр
• Дизайн приложений: примеры для вдохновения #40
• Google запустил бесплатный курс по Python на Coursera
• Полезный фреймворк для именования ваших классов, функций и переменных
• Прекратите использовать спиннеры — есть кое что получше
• Проектирование циферблата CASIO для Apple Watch
• Советы по дизайну лучших интерфейсных иконок
• Как улучшить навыки дизайна с помощью насмотренности
•
5 основных продуктовых фреймворков
•
3 основных урока, извлеченных из создания приложения
•
Полное руководство разработчика по качеству кода
•
Книги по программированию, которых не существует (но мы все читали)
•
Чистая архитектура для корпоративного мобильного приложения
•
Руководство разработчика приложений для собеседований по системному дизайну
•
Как я сделал игру за 35 часов
•
Пять вещей, которые я узнал после решения более 500 вопросов Leetcode
•
10 бесплатных инструментов для создания пользовательских интерфейсов
•
Советы по созданию качественного приложения с Firebase
•
Почему @protocol все поменяли для Flutter-разработчиков?
•
Как синдром самозванца может помочь вам стать лучшим разработчиком
•
Создание Age of Empires II
•
Почему некоторые разработчики избегают головной боли магазинов приложений, оставаясь только в Интернете
•
Как создавать лучшие иконки
•
Провал одного технического интервью научил меня большему, чем прохождение трех
•
Психологические принципы для каждого продуктового дизайнера
•
7 лучших советов и рекомендаций по работе с Dart для более чистых Flutter-приложений
•
Резюме, которое привело меня в FAANG
•
19 реалистичных привычек для улучшения разработки
•
Замена React Native на Kotlin Multiplatform в Wantedly
Аналитика, маркетинг и монетизация
•
Как мы достигли 1 млн скачиваний с нулевым бюджетом
•
На какие языки стоит перевести игру в 2021: обзор от Alconost
• Рост мобильных приложений 2020 — Отчет Adjust и Facebook
• Litoff и App Annie: загрузки финансовых приложений в 2020 выросли на 15%
• Исследование AppsFlyer: процент ATT-согласия намного выше, чем ожидалось
• Bethesda тестирует Mighty DOOM
• Canvas Medical: хороший UI для медицины
• 7 простых способов ранжироваться в сторе выше
• Измените свой дизайн для глобальной аудитории: исследование кросс-культурного UX-дизайн
Как продать мобильное приложение?
Европейские шпили: как наше приложение доехало до Германии и Польши
•
5 лучших инструментов продуктовой аналитики 2021
•
Удерживаем пользователей как Amazon, Spotify и др.
AI, Устройства, IoT
•
Зачем все ставят вентиляторы в туалет или как мы решили сделать умный вентилятор, история по DIY
•
Edge платы для домашнего Computer Vision
•
Чем Tarantool круче Redis'а для IoT-сервисов
•
Создание своей оценочной платы для микроконтроллеров
•
Война миров во вселенной IoT/IoE — доколе?
ИИ-платформа генерации идей для игр Ludo вышла из бета-версии
NVIDIA выпустила диалоговый фреймворк Jarvis
← Предыдущий дайджест. Если у вас есть другие интересные материалы или вы нашли ошибку — пришлите, пожалуйста, в почту.

Этот дайджест доступен в виде еженедельной рассылки. А ежедневно новости мы рассылаем в


•

•

• В App Store обнаружили казино, которые притворяются детскими играми
• Apple анонсировала конференцию Spring Loaded 20 апреля
• Apple работает над комбинацией Apple TV и HomePod
• Apple не выпускает iMessage на Android, чтобы пользователи не уходили с iPhone
•

•

•

•

•

•

•

•

•

•

•

•

•

•


•

•

•

•

•

•

• Coroutines: хаотичное изучение
•

•

•

•

•

•

•

•

•

•


•

•

•

•

•

•

•

•

• Podlodka #211: Haskell
• Рабочий день разработчика гипер-казуальных игр
• Дизайн приложений: примеры для вдохновения #40
• Google запустил бесплатный курс по Python на Coursera
• Полезный фреймворк для именования ваших классов, функций и переменных
• Прекратите использовать спиннеры — есть кое что получше
• Проектирование циферблата CASIO для Apple Watch
• Советы по дизайну лучших интерфейсных иконок
• Как улучшить навыки дизайна с помощью насмотренности
•

•

•

•

•

•

•

•

•

•

•

•

•

•

•

•

•

•

•

•

•


•

•

• Рост мобильных приложений 2020 — Отчет Adjust и Facebook
• Litoff и App Annie: загрузки финансовых приложений в 2020 выросли на 15%
• Исследование AppsFlyer: процент ATT-согласия намного выше, чем ожидалось
• Bethesda тестирует Mighty DOOM
• Canvas Medical: хороший UI для медицины
• 7 простых способов ранжироваться в сторе выше
• Измените свой дизайн для глобальной аудитории: исследование кросс-культурного UX-дизайн
Как продать мобильное приложение?
Европейские шпили: как наше приложение доехало до Германии и Польши
•

•


•

•

•

•

•

ИИ-платформа генерации идей для игр Ludo вышла из бета-версии
NVIDIA выпустила диалоговый фреймворк Jarvis
← Предыдущий дайджест. Если у вас есть другие интересные материалы или вы нашли ошибку — пришлите, пожалуйста, в почту.