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

    В этом выпуске нашего дайджеста — бинарная совместимость, разбор SwiftUI, ошибки пиксель-арта, традиционный уже ад инди-разработчика, Flutter с нуля до прода, бесплатные книги и SDK для роботов. Добро пожаловать!



    Любая библиотека должна по возможности соблюдать бинарную совместимость. Если разные версии библиотеки в зависимостях несовместимы, то результатом будут краши в рантайме. С такой проблемой мы можем столкнуться, например, при добавлении поддержки Reaktive в MVICore. Поговорим о eSIM (полное название embeddedSIM — то есть, встроенная SIM) — впаянных в гаджет (в отличие от привычных съёмных «симок») SIM-картах. Разберём, чем они лучше обычных SIM-карт и почему крупные мобильные операторы противодействуют внедрению новой технологии.

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

    iOS

    (+17) SwiftUI по полочкам
    Apple сообщает о рекордных результатах за первый квартал
    Фишки Swift: двойное нажатие Apple Pencil
    Пошаговая инструкция по интеграции Apple Pay в ваше мобильное приложение
    Как создать карточку с видео на SwiftUI
    Интервал между символами в UILabel
    Реализация сервис-ориентированной архитектуры в Swift 5
    Пост мортем: сбой App Store 24.01.2020
    iOS 13: невоспетые герои 2019 года
    Маски и оверлеи в SwiftUI
    Превью ссылок в стиле Twitter для iOS-приложений на SwiftUI
    Лучшие практики безопасности для iOS-приложений
    5 расширений Swift, которые упростят вам жизнь
    13 быстрых клавиш Xcode для повышения вашей продуктивности
    Buildkite и Fastlane — iOS-разработчики станут лучше спать
    Реализация экрана поиска с использованием MVVM и RxSwift
    Instructions: руководства для пользователей на Swift

    Android

    (+23) Расширения в Kotlin. Опасный атавизм или полезный инструмент?
    (+22) Как научить телефон видеть красоту
    Видео Google Play | Playtime 2019
    Фишки Kotlin: самое часто встречающееся значение
    Android Broadcast #5: Как стать крутым разработчиком
    История нашего большого переписывания Android-приложения
    Динамические экраны с использованием server-driven UI в Android
    Создание реактивного и гетерогенного адаптера в Kotlin
    Как реализовать темную тему на Android
    Корутины в Kotlin Coroutines: от простого к продвинутому
    Организация Kotlin-кода
    Безопасность Android-приложений: лучшие практики
    Android: как исправить серьезную проблему в LiveData
    Введение в анимацию с Jetpack Compose
    Android-NFC: работа с NFC на Android

    Разработка

    (+26) Пиксель-арт для начинающих: исправляем типичные ошибки
    (+20) Как левел-дизайнеры используют приёмы теории архитектуры для создания игровых уровней
    (+20) Вывод внутриигровых сообщений с помощью Particle System 
    (+15) Ад инди-разработчика или как довести свой проект до релиза и не застрелиться в процессе
    (+10) Весенняя стажировка для мобильных разработчиков в Redmadrobot
    (+10) Особенности установления соединения между участниками сетевой игры типа «равный к равному»
    (+7) Игра, управляемая лицом, в масках Инстаграм, или двойной клик глазами
    (+5) React Native: новая веха в мобильной разработке Shopify
    (+2) 7 этапов эволюции тестирования в компании
    Как я изучал Flutter или meows.app с 0 до прода
    Podlodka #148: Корни инженерной культуры Восточной Европы
    Flutter Dev Podcast #12: Flutter Europe и пет-проекты
    Яндекс открыл набор на летнюю стажировку
    Бесплатная книга “Создание шутера от первого лица на Unity”
    Coderslang: приложение для изучения программирования
    Один день из жизни UX менеджера
    Почему не нужно копировать UX паттерны крупных успешных компаний
    UX-тренды банкинга 2020 года: искусственный интеллект, голосовые помощники и гиперперсонализация
    Как сделать идеальное мобильное приложение для интернет-магазина
    Создание инфраструктуры персонального поиска для ваших знаний и кода
    9 действий для лучшего обмена знаниями между командами разработчиков
    Истории в Spotify
    Почти 10 уроков разработки игр, которые я усвоил в своем инди-приключении
    Мобильный UI: 13 основных паттернов дизайна приложений, о которые нужно знать
    Как должно было быть создано приложение SoundCloud для iOS — исследование UX
    Понимание анимации загрузки — ее типы и применения
    Nebula: сетевой фреймворк от Slack

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

    Google ввел ограничения на атрибуцию в App Campaigns на iOS
    Расходы европейских пользователей на приложения выросли на 19%, Россия на 4 месте
    Мессенджер для продавцов Attentive привлек еще $70 млн.
    Играть по-взрослому: кейс Kunlun и Bidease
    В 1-800-Flowers сделали AR-букеты
    Ahoi: дейтинг с видео
    Как в Fishing Clash справились со скамом в Facebook
    SuperAwesome привлек еще $17 млн на детские технологии
    Busuu покупает Verbling
    Reroll – блокнот для характеристик D&D героев. Наш опыт запуска на Kickstarter и сбора $20К за 8 часов
    Как увеличить конверсию в установки при помощи экспериментов в сторах
    CCPA – что это значит для вашего приложения
    Монетизации игр на развивающихся рынках с помощью поведенческой науки

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

    (+32) Адаптивная фоновая подсветка для телевизора на Raspberry Pi – аналог Ambilight
    (+19) Туториал по uplift моделированию. Часть 1
    (+17) Нейросети в производстве зубных протезов
    (+14) Хьюстон! У нас проблемы? От «умного» улья к роболетку и «кластеру» на ардуино
    (+4) Как защитить IIoT-решения, используемые в социальной инфраструктуре. И от чего?
    (+2) DDoS от кофеварки
    Бесплатная книга «Искусственный интеллект в играх 3»
    Google запустил MediaPipe в веб
    Как я переехал в США и запустил IoT-платформу с полумиллионом пользователей
    Чему учиться разработчику встраиваемых систем
    Boston Dynamics выложила SDK для робота Spot

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

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

      –1
      Что за бред? Зачем добавлять в статью ссылку на «Бесплатная книга «Искусственный интеллект в играх 3»», где уже сказано и название книги и то, что она бесплатная, но после вести на какой-то непонятный сайт, на котором «невероятно полезная статья с оглавлением книги» и ссылкой на наконец-то таки саму книгу, дичь. Можно было и сразу ссылку вставить.

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