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

    В этой подборке рендеринг экранов ВКонтакте, победы и поражения Flutter, архитектуры и скриншоты, продуктовая аналитика и архетипы игроков, виртуальные свидания в умных домах и много других интересных материалов!



    Что делает ВКонтакте, чтобы уменьшить лаги отрисовки? Как отобразить очень большое сообщение и не убить UiThread? Как уменьшить задержки при скролле в RecyclerView? Благодаря Xamarin и моей любви к этому фреймворку я, в принципе, перешел в стан разработчиков, этот инструмент помог заработать мне немалых денег, знаний и найти замечательных коллег. Так почему же сейчас я пишу на Flutter? Короткий ответ, потому что Flutter покрывает все потребности кросс-платформенной разработки.

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

    iOS

    (+7) Unit тесты для RxSwift кода
    (+6) Автоматические скриншоты iOS с помощью XCTestplan и XCode 11
    (+5) HandsAppMVP: iOS-архитектура для студии аутсорс разработки
    (+2) Неоморфизм с помощью SwiftUI. Часть 2: Что можно сделать с доступностью? + Часть 1
    iOS-приложение с витрины Flutter может вообще не использовать фреймворк
    Что разработчику ждать от iOS 14?
    Swift 5.3 начнет поддерживать Windows
    Создаем всплывающую кнопку оценки с помощью SwiftUI
    5 забавных iOS-библиотек для улучшения UI
    Превью SwiftUI в масштабе
    Реализация POP в iOS-приложении
    Современные подходы к разработке пользовательского интерфейса в iOS
    Что нового в Swift 5.3
    Codables: лучший способ парсинга данных в Swift
    Динамические ссылки Firebase в приложения для iOS
    Создание полностью прозрачного UITabBar в Swift
    Топ-10 самых полезных iOS-библиотек в 2020 году
    Как интегрировать fastlane в iOS-проект
    Как создавать градиенты в Swift с помощью CAGradientLayer
    Неудобная правда об отправке вашего приложения в Apple…
    Как создать повторно используемые превью SwiftUI, которое можно сохранить в JSON-файл
    RHLinePlot: график, как в Robinhood
    EasySwiftLayout: простая работа с Auto-Layout в iOS
    YouTag: музыкальный плеер для iOS

    Android

    (+76) Прокачиваем беговую дорожку
    (+25) Контроль пульса во время пробежки через музыкальную обратную связь — или «ищутся тестировщики, любящие бегать»
    (+16) Создание приложений с помощью Mediapipe
    (+10) CI TeamCity — Автоматизация build процессов Android и UI тестирования
    (+9) Пробуем и разбираемся с StateFlow
    (+4) Декларативное программирование клиент-серверных приложений на Android. Часть 2
    (+3) MVVM и выбор элементов в адаптере — LiveData
    Как я не создал свой бизнес по разработке Android-приложений
    Android Dev Podcast #114: Новости
    Прорезаем статику – поиск и устранение проблем с помощью статического анализатора кода Android Studio
    Beetlens: кастомный Android UI на OpenGL
    Как использовать Coil, собственный загрузчик изображений Kotlin
    Расширяемый Recycler View в Android
    Мгновенное распознавание речи на Android
    Понимание корутинов в Kotlin с этой ментальной моделью
    Git репозитории как зависимости Gradle
    Движения Material Design для Android
    FAB с BottomAppBar
    Почему я отказался от любимого Gson в моем Kotlin-проекте
    Обнаружение сбоев в опубликованном приложении для Android
    Несколько навигационных графов (с нижней панелью навигации)
    AGSkeletonLoading: экраны-скелеты для Android
    EasyFlipViewPager: переворачивающиеся карточки

    Разработка

    (+32) Уменьшение размера React Native-приложения на 60% за несколько простых шагов
    (+25) Программирование игры для embedded-устройства на ESP32
    (+24) Azure DevOps и App Center вместо тестовых ферм: упрощаем и ускоряем мобильную разработку с помощью облачных сервисов
    (+11) Материальный Python. Кастомные карточки с OpenGL-эффектами
    (+10) Лор и сюжет в несюжетных играх на примере Throne: Kingdom at War
    (+10) Как улучшить производительность вашего Flutter приложения
    (+5) Тенденции тестирования, к которым стоит присмотреться в 2020 году
    (+4) Подробно о пакете Provider для Flutter
    Podlodka #164: Продуктовая безопасность
    make sense: о переходе на удаленку, спаде производительности и осознанности
    Google и Apple запустили API для отслеживания контактов
    Citrix представил App Protection для защиты данных на персональных устройствах
    King открывает Defold
    Плагин для Adobe XD экспортирует готовый код во Flutter
    Где и как размещать Floating Action Buttons в мобильных приложениях
    UX для недизайнеров, или что должен учитывать разработчик мобильных приложений
    От отсутствия опыта в программировании к офферу от Microsoft за 1 год
    Создание паззла на Flutter
    4 новых продукта GitHub, которые изменят ваш код
    Трассировка лучей в Notepad.exe со скоростью 30 кадров в секунду
    3 ловушки, из-за которых разработчики перестают учиться
    Динамические темы Flutter в 3 строчки

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

    (+6) Видеозаписи докладов митапа по продуктовой аналитике
    (+4) Работающая геймификация: Octalysis Framework
    GameRefinery отслеживает «Мотивацию игроков и их архетипы»
    Маркетплейс RapidAPI привлек еще $25 млн.
    «Руководство по работе с обратной связью пользователей» от Instabug
    Трафик загрузки приложений вырос на треть
    Checkaso выпустили инструмент для работы над текстовым ASO
    Workstream: поиск не офисных работников
    Rumble Hockey отдаст 100% дохода всем инфлюэнсерам
    AirBnB и Bumble предлагаю виртуальные свидания
    Constellation Software покупает TUNE
    Mozilla начинает принимать заявки в Builders Incubator
    Контента для Oculus Quest продано на $100 млн.
    Как потратить $300 тысяч и узнать все о доставке кофе
    «Второе пришествие» Apple Search Ads в Россию: какие первые выводы можно сделать
    Как сделать мобильное приложение заметным в App Store и Google Play: инструкция по размещению и оптимизации
    Построение прогноза аудитории и дохода с помощью когортного анализа в Excel/Google Spreadsheets

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

    (+22) Хождение по граблям в чистом поле или как собрать MAC-адреса близлежащих Wi-Fi-устройств
    (+19) Как построить “Умный дом" и не сойти с ума
    (+8) IoT там, где вы не ждали (часть 3). Построение имитационной модели + (часть 2) + (часть 1)
    Magic Leap получил еще $350 млн.
    Samsung прекращает работу приложений виртуальной реальности
    Mail.ru Group будет бесплатно готовить специалистов по анализу данных и машинному обучению
    Sony и Microsoft сделали модуль камеры с ИИ
    Программирование Raspberry Pi на Swift: светофоры
    Пинбол на Arduino, который играет сам

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

    Комментарии 0

    Только полноправные пользователи могут оставлять комментарии. Войдите, пожалуйста.

    Самое читаемое