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

Моя цель - предложение широкого ассортимента товаров и услуг на постоянно высоком качестве обслуживания по самым выгодным ценам.
В новом дайджесте — локализация и гиперкубы, библиотеки и декларативные фреймворки, приложения, чтобы побороть зависимость от приложений, Flutter, Unity, подписки, AI для поиска уязвимостей в коде и многое другое.



Локализация приложений: как мы подружили перевод и разработку

В этой статье я расскажу, как мы выстроили процесс локализации, как подходим к контролю качества, как релизим переводы в зависимости от платформы, и главное — как мы добились того, что разработчики хорошо отзываются о нашей системе переводов.

Гиперкуб. Как мы обеспечили разработчиков тестовыми устройствами и не потеряли их

Невозможно полноценно тестировать и отлаживать мобильные приложения без тестовых устройств. Таких устройств должно быть много, потому что один и тот же код на разных моделях ведёт себя по-разному. Но как организовать учёт устройств? Как сделать так, чтобы разработчики и тестировщики быстро и без волокиты получали конкретный смартфон в необходимой конфигурации?

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

iOS

(+17) Swift Property Wrappers
(+13) 20 библиотек для эффектного iOS-приложения
(+9) Бардак на старте: постмортем на скорость запуска iOS-приложения
(+6) Проблемы архитектуры в больших проектах
(+4) Валидация данных в iOS приложениях
(+4) Swift: Контейнеры для хранения значений по ключу
(+3) Вариант работы с вебсокетами в iOS на языке Swift
• Apple ограничивает использование HTML5
• СтрижПИ, или SwiftUI на практике
• Как в два счёта профукать подписку на Apple Membership (и быстро её вернуть)
Десять заповедей iOS-разработки
Можете ли вы ответить на этот простой вопрос о Swift правильно?
Лучшие iOS-приложения с Interaction-Driven дизайном
Машинное обучение на устройстве с помощью SwiftUI и PyTorch Mobile
SwiftUI: создание листаемых карточек в стиле Tinder
Лучший способ убедиться, что ваш Swift-код больше никогда не сбойнет
Что нового в Watch OS 6?
Асинхронное программирование в Swift с Future и Promise
Показ HTML-кода с картинкой в UILabel и определение нажатия на нее
Swift: подсказки по распространенным задачам
SwiftUI — использование Xcode 11 Canvas
Распознавание речи и синтез речи на iOS со Swift
Реализация контекстных меню в iOS 13 с использованием SwiftUI или UIKit
VVVVVV для iOS и tvOS

Android

(+14) Инкрементальный annotation proccesing для ускорения gradle-сборок
(+12) Починить, хакнуть, раскопать. Решаем онлайн-квест Droid Mission
(+6) Практичные способы маппинга данных в Kotlin
(+4) Внешняя компонента для 1С Мобильной платформы (BroadcastReceiver)
• Google I/O 2020 пройдет 12-14 мая
• Microsoft выпустила SDK для смартфона с двумя экранами Surface Duo
• Google выпустил новые приложения, чтобы побороть зависимость от смартфонов
• Android Developer Roadmap 2019: карта навыков и модель развития Android-разработчика
• Welltory удалили из Google Play
• Руководство по Jetpack Compose
• Троян Shopper скачивает приложения и оставляет отзывы в Google Play
Изменение типов в Kotlin с typealias
Динамическое изменение темы с помощью круговой анимации на Android
KotlinConf 2019: что нового в Java 19: Конец Kotlin?
Компонент JetPack Navigation в Android
Нулевая стоимость абстракции в Kotlin
Как использовать табы в Jetpack Compose?
Лучшие горячие клавиши Android Studio
SharedPreferences в Android
Квест Google I/O 2020
KotlinMultiPlatform: кроссплатформенная погода на Kotlin
RateBottomSheet: предложение оценить приложение

Разработка

(+32) Простой зомби-шутер на Unity
(+27) Физика для мобильного PvP шутера, или как мы из двумерной игру в трёхмерную переделывали
(+27) Flutter. Часть 3. Для разработчиков React Native
(+23) Движок, скриптовый язык и визуальная новелла — за 45 часов
(+18) Особенности реализации динамических списков в пользовательских интерфейсах
(+16) Основы левел-дизайна: эффект течения или как не дать заскучать игроку
(+13) Любовь в ненависть indie gamedev'a
(+10) Книга “Разработка мобильных приложений на C# для iOS и Android”
(+10) Как я делал 2D тени в Unity
(+7) Моя первая html5 игра, от Алисы Яндекса и победах в премии до мобильных приложений
(+7) Оптимизация 3D-моделей для игровой сцены
(+6) Мобильная разработка — это просто и скучно? Доклад Яндекса
(+6) Пишем шейдеры кодом в Unity LWRP
(+4) Визуальный редактор логики для Unity3d. Часть 2
(+2) Разработка UI: кого слушать — себя или пользователя?
• Podlodka #147: Web-фреймворки
• Подождите, операция выполняется. Как главный факап в истории «Сбербанка Онлайн» изменил компанию
• Минэкономики предлагает создать российский аналог GitHub
• Основы иерархии в дизайне интерфейса
• Геймификация: что и почему это работает, часть первая
Чему (почти) 2 года Flutter научили меня
8 трендов UI-дизайна на 2020 год
21 способ быть плохим разработчиком
7 способов быть хорошим разработчиком
Как измерить свои навыки UX-дизайна?
Nebula — открытый глоабльный сетевой стек от Slack
9 советов, как быстро улучшить дизайн приложения
5 принципов дизайна для лучших продуктов
Видео Mobiconf 2019
LaunchDarkly: управление фичами

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

(+4) Вступление в работу с возвратом пользователя: советы для Hooked-модели
(+3) Отчет App Annie за 2019 год: взгляд в прошлое, заметки на будущее
• Подписки в приложениях в США выросли в 2019 на 21% до $4.6 млрд
• Игры Niantic принесли $249 млн. туристического дохода
• Стикеры Venmo
• ФАС определила список приложений для предустановки
• Реклама в приложении: чеклист
• Вышла книга о локализации и культурализации игр
• Расходы на мобильную рекламу в России вырастут на 22.2%
• Snyk получил новые инвестиции и стал единорогом
• AppsFlyer получил новые инвестиции в $210 млн.
• Ты водишь! AR-игры в сториз — главный тренд 2019 года
• «Додо Пицца» купила «Где Шаверма»
• Гонка Slack, Microsoft Teams и Workplace: одна интрига умерла, новая зародилась
• 1000 установок игры за 2 дня с помощью TikTok
Лучше понимаем игроков с помощью аффинити обучения
Как бороться с мошенническим шпионским ПО на Facebook?
Проблемы ASO для мобильных игр в 2020 году

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

(+39) SVM. Объяснение с нуля, имплементация и подробный разбор
(+28) Хватит всё подряд называть ИИ
• GitHub начал использовать AI для рекомендации задач
Uber собрал один из самых впечатляющих стеков глубокого обучения с открытым исходным кодом

← Предыдущий дайджест. Если у вас есть другие интересные материалы или вы нашли ошибку — пришлите, пожалуйста, в почту.
Источник: https://habr.com/ru/company/digital-ecosystems/blog/485524/


Интересные статьи

Интересные статьи

Привет! Завершаем год традиционным дайджестом «классических» и нетривиальных ИБ-инцидентов, о которых писали зарубежные и российские СМИ в декабре. Нас лично впечатлило, ...
Предлагаем вашему вниманию подборку с ссылками на новые материалы из области фронтенда и около него. Читать дальше →
Предлагаем вашему вниманию подборку с ссылками на новые материалы из области фронтенда и около него. Читать дальше →
Привет, Хабр! Отфильтровав для вас большое количество источников и подписок, сегодня собрал все наиболее значимые новости из мира будущего, машинного обучения, роботов и искусственного интеллекта...
Предлагаем вашему вниманию подборку с ссылками на новые материалы из области фронтенда и около него.