Темы



Дайджест интересных материалов для мобильного разработчика #347 (1 — 7 июня)

В этом выпуске блеск и нищета key-value базы данных, адаптивный дизайн на основе StackView, глаза HMS, ретро игры и новые архитектуры, адекватный онбординг и неадекватные трекеры в детских приложениях.

ucnohopwisieueoocotg1dmdisq.png

Основной базой данных для персистентного хранения состояния приложения стала весьма экзотическая для мобильного мира Lightning Memory-Mapped Database (LMDB). Под катом вашему вниманию предлагается её подробный обзор в четырех частях.

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

f1930ac4945596eb9707bc7a01bc5bdc.pngiOS

• Адаптивный дизайн в iOS с UIStackView
• В iOS 14 появится встроенный переводчик
• 377ae0333d0f4b7b97307c9eea5ee21a.gifКак исправить 5 самых популярных ошибок в iOS-приложениях
• 377ae0333d0f4b7b97307c9eea5ee21a.gifПочему UIResponder.Keyboard Notification Handler анимирован?
• 377ae0333d0f4b7b97307c9eea5ee21a.gifРеализуем компоненты дизайн-системы на iOS
• 377ae0333d0f4b7b97307c9eea5ee21a.gif6 Swift-овых способа написания кода
• 377ae0333d0f4b7b97307c9eea5ee21a.gifСоздание иконки приложения на SwiftUI
• 377ae0333d0f4b7b97307c9eea5ee21a.gifSwift 5.3 — движение в направлении производительности и качества
• 377ae0333d0f4b7b97307c9eea5ee21a.gifСоздаем видеочат 1-на-1 с SwiftUI и Dolby.io
• 377ae0333d0f4b7b97307c9eea5ee21a.gif7 потрясающих SwiftUI проектов с открытым исходным кодом, чтобы вдохновить вас
• 377ae0333d0f4b7b97307c9eea5ee21a.gifБыстрый старт с SwiftUI
• 377ae0333d0f4b7b97307c9eea5ee21a.gifТри средства отладки, которые решают 99% проблем в iOS-приложении
• 377ae0333d0f4b7b97307c9eea5ee21a.gifМой список желаний для WWDC »20
• 377ae0333d0f4b7b97307c9eea5ee21a.gifОпределение эмоция с помощью технологий Apple
• 377ae0333d0f4b7b97307c9eea5ee21a.gifSign In With Apple — Node.JS бэкенд для iOS-разработчиков
• 96716bcb926741e79bb1c284a88083ca.pngUGrid: красивый CollectionView
• 96716bcb926741e79bb1c284a88083ca.pngUpcoming Movies App: новые фильмы на Swift

e1a3cf2a8b65a0da69bbdd5c0ad040fe.pngAndroid

• (+37) Заглянуть в глаза дракону: 10 вопросов к Huawei Mobile Services
• (+3) Почему я не использую SharedViewModel для фрагментов?
• Google удалил индийское приложение для удаления китайских приложений
• Swift на Android для шаринга кода
• 377ae0333d0f4b7b97307c9eea5ee21a.gifРешаем игру по поиску слов с помощью Firebase ML Kit и Huawei ML Kit
• 377ae0333d0f4b7b97307c9eea5ee21a.gifDuolingo завершил миграцию на Kotlin и уменьшил количество строк кода на 30%
• 377ae0333d0f4b7b97307c9eea5ee21a.gifHilt: первое впечатление
• 377ae0333d0f4b7b97307c9eea5ee21a.gifНовый Android Results API и как его использовать, чтобы сделать ваш код чище
• 377ae0333d0f4b7b97307c9eea5ee21a.gifAndroid MVI с Kotlin Coroutines & Flow
• 377ae0333d0f4b7b97307c9eea5ee21a.gifСоздание потока онбординга с MotionLayout
• 377ae0333d0f4b7b97307c9eea5ee21a.gif10 советов, чтобы ускорить время сборки Gradle
• 377ae0333d0f4b7b97307c9eea5ee21a.gifCompose Academy
• 377ae0333d0f4b7b97307c9eea5ee21a.gifAndroid Material Component: создание Navigation Drawer в стиле Gmail
• 377ae0333d0f4b7b97307c9eea5ee21a.gifТуториал по безопасности сетевых данных в Android
• 377ae0333d0f4b7b97307c9eea5ee21a.gifПолноэкранные Intent уведомления
• 377ae0333d0f4b7b97307c9eea5ee21a.gifНайти маяк и не терять его: мое путешествие в мир BLE на Android
• 96716bcb926741e79bb1c284a88083ca.pngRaw Draw Android: приложения для Android на C
• 96716bcb926741e79bb1c284a88083ca.pngVortex: живые Data-driven обои

7081c634ec176ab6b953d9d19e82a09a.pngРазработка

• (+22) Переработка архитектуры React Native в 2020 году
• (+22) Yandex Retro Games Battle 2020: новый конкурс и полезные ресурсы для разработчиков
• (+16) Avokado Project
• (+14) Реализация тумана войны из Civilization VI в Unity
• (+7) Релизный поезд. Доклад Яндекса
• (+4) Разработка, оптимизация и релиз на Unity игры Synthety
• (+3) Как устроен Selenium: Эпизоды 1 — 2
• (+2) Топ-9 тенденций автоматизированного тестирования в 2020 году
• make sense: о выстраивании отношений с командой разработки и важности технических навыков
• Flutter Dev Podcast #16: Meduza
• Podlodka #166: переговоры
• Гид разработчика по собеседованию
• 6 мощных инструментов для разработчиков, использующих Mac
• Как мобильные разработчики чувствуют себя во время кризиса: личный опыт Виталия Дубинина (iD EAST)
• Онлайн-конференция Firebase Live
• Coursera открыла бесплатный доступ для студентов
• Google сделал AR-приложение для соблюдения социальной дистанции
• Почему мобильное приложение на Flutter — хорошая идея для бизнеса в 2020 году
• Топ-9 JS-движков и библиотек для игр в 2020 году
• Дизайним адекватный Onboarding
• Подробное руководство по дизайну текстовых полей и форм
• Пожалуйста, дайте шанс junior UX-дизайнерам
• 377ae0333d0f4b7b97307c9eea5ee21a.gifЧто такое Low-Code разработка
• 377ae0333d0f4b7b97307c9eea5ee21a.gifНикто не говорил мне, что UX будет таким
• 377ae0333d0f4b7b97307c9eea5ee21a.gifЕжедневные активности, которые помогут вам стать лучшим разработчиком
• 377ae0333d0f4b7b97307c9eea5ee21a.gifFortnite — это Jira для детей
• 377ae0333d0f4b7b97307c9eea5ee21a.gifКак создание собственного продукта может сделать вас опытным разработчиком

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

• (+17) Как мы анализируем пиццу и ваш вкус
• (+2) Монетизация в онлайн-играх: как использовать чужой опыт для собственных нужд
• FTC оштрафовала HyperBeard за использование трекеров рекламных сетей в детских приложениях
• Самые зарабатывающие приложения мая 2020
• Самые скачиваемые приложения мая 2020
• Zoom даст шифрование только платным пользователям
• Lili: мобильны банк для фрилансеров
• Gismart предлагает музыкантам продвижение в гиперказуальных играх
• YouTube стал источником №1 информации об играх для детей
• FAN и AppsFlyer представили первый инструмент для измерения эффективности кампаний
• Корейский «соседский» маркетплейс Karrot получил $33 млн.
• HBO Max и Bumble открывают «Личную жизнь»
• Biloba: график вакцинации
• Чек-лист по оптимизации приложения для Google Play

8538129f5e7b404a720121cb9c3814db.jpgAI, Устройства, IoT

• (+22) Детектор приседаний на OpenCV и Tensorflow
• (+20) Не надо учить Machine Learning
• (+14) Анализируем шедевры живописи с помощью классического ML
• (+12) Когда написать свою IoT-платформу выгоднее, чем покупать готовую
• (+5) Распознавание русского алфавита: от сбора датасета до создания GUI
• (+3) Машинное обучение: с чего начать или как построить первую модель

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

© Habrahabr.ru