[recovery mode] Дайджест интересных материалов для мобильного разработчика #200 (17-23 апреля)

Завершим эту неделю приятной новостью: с сегодняшнего дня команда Everyday Tools подключается к проекту RoboForm — каждое воскресенье на нашем блоге будет появляться свежий дайджест с отборными материалами на тему мобильной разработки. Поздравляем всех причастных с юбилейным выпуском и передаём слово автору:

«Когда-то дайджест новостей начинался как простая забава — «а давайте попробуем». И вот уже 200 выпуск и около четырех лет! Спасибо всем, что читаете (если есть комментарии и пожелания — пишите всеми доступными способами), спасибо Everyday Tools за публикации — мобайл на самом пике и останавливаться, кажется, не собирается. Новинки F8, реактивное программирование, платформы, доходы и расходы приложений — все это в новом выпуске.

313f2611bdfd4fa1a6c4386590530885.png

1f22c16bd5ab47f5b317d1cae555a170.jpg

Реактивные приложения с паттерном RxPM. Прощайте? MVP и MVVM

Уже продолжительное время я размышляю над паттерном RxPM и даже успешно применяю его в «продакшне». Я планировал сначала выступить с этой темой на Mobius, но программный комитет отказал, поэтому публикую статью сейчас, чтобы поделиться с Android-сообществом своим видением нового паттерна.
3ecaca8e03314c638b679c2cd68b3115.jpg

Натив или гибрид? Специалисты Яндекса отвечают на главный вопрос мобильной разработки

В мобильной разработке одни из самых горячих споров ведутся вокруг нативной и гибридной разработки. Мы решили дать трём преподавателям «Мобилизации» порассуждать на эту тему. Получилось небольшое интервью, которое может быть интересно как новичкам в разработке, так и тем, кто уже определился со своим выбором.
0449288d4aed2d1776f39b5d3620785f.png

Paparazzo. Мощный, стильный, свой. Часть I

Не так давно перед нами встала задача кардинальнои? переработки процесса подачи объявления через мобильное приложение Avito под iOS. Результатом должен был стать инструмент, которыи? сделал бы этот процесс быстрым и необременительным для пользователя.

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

f1930ac4945596eb9707bc7a01bc5bdc.pngiOS

  • (+22) Получил 1.2K звезд на GitHub с ужасной архитектурой. Как?
  • (+10) Внедрение сервиса Apple Music в iOS-приложение
  • (+8) Композиция протоколов для инъекции зависимостей
  • (+7) Разработка компонента для создания коллажей
  • Сколько заработала игра, получившая на фичеринге в App Store 500,000 загрузок
  • Apple открывает LivePhotosKit JS для сайтов
  • SketchAR: новая эра рисования — история запуска на iOS
  • Поисковая реклама в App Store заработает в Великобритании, Австралии и Новой Зеландии
  • Apple обновила TestFlight
  • 377ae0333d0f4b7b97307c9eea5ee21a.gifTexture — новый дом для AsyncDisplayKit
  • 377ae0333d0f4b7b97307c9eea5ee21a.gifАнализ видео в несколько строчек кода
  • 377ae0333d0f4b7b97307c9eea5ee21a.gifПрограммная смена иконки приложения в iOS 10.3
  • 377ae0333d0f4b7b97307c9eea5ee21a.gif5 ключевых выводов после 8 лет iOS-разработки
  • 377ae0333d0f4b7b97307c9eea5ee21a.gifПример из реальной жизни: дневник на Core Data и Swift
  • 96716bcb926741e79bb1c284a88083ca.pngTweenKit: библиотека для анимации
  • 96716bcb926741e79bb1c284a88083ca.pngSquishButton: мигающая сжимающаяся кнопка

e1a3cf2a8b65a0da69bbdd5c0ad040fe.pngAndroid
  • (+27) Как запихнуть свой сенсор в Android OS
  • (+17) Производительность приложений под Android
  • (+13) Rx. Постигаем retryWhen и repeatWhen на примерах из Android разработки
  • (+11) Работа с ConstraintLayout через XML-разметку
  • (+9) Инструкция по публикации Android-приложения в Google Play
  • Google сделает в Chrome собственный блокировщик рекламы
  • Суд утвердил мировое соглашение между ФАС и Google
  • 0969d57472436cb29c81182247694a11.pngAndroid Dev Подкаст. Выпуск 31. Новости. Offline работа, сборка в Docker.
  • 377ae0333d0f4b7b97307c9eea5ee21a.gifИнтервьюирование Android-разработчиков
  • 377ae0333d0f4b7b97307c9eea5ee21a.gifКак сделать кастомный View
  • 377ae0333d0f4b7b97307c9eea5ee21a.gifКастомный диалог с круговым раскрытием
  • 377ae0333d0f4b7b97307c9eea5ee21a.gifСлот-машина для Android
  • 377ae0333d0f4b7b97307c9eea5ee21a.gifАльфа-релиз Apollo GraphQL на Android
  • 377ae0333d0f4b7b97307c9eea5ee21a.gifЖизнь и смерть Android Activity
  • 377ae0333d0f4b7b97307c9eea5ee21a.gifGoogle Map с кластеризацией маркеров
  • 377ae0333d0f4b7b97307c9eea5ee21a.gifКак сделать стриминговое музыкальное приложение
  • 377ae0333d0f4b7b97307c9eea5ee21a.gif10 книг, которые надо прочесть Android-разработчику
  • 377ae0333d0f4b7b97307c9eea5ee21a.gifЧто такое Context в Android-приложении?
  • 377ae0333d0f4b7b97307c9eea5ee21a.gifВидео мастер-класса с F8 про Litho
  • 96716bcb926741e79bb1c284a88083ca.pngAbout Box: панель с информацией о приложении
  • 96716bcb926741e79bb1c284a88083ca.pngFormMaster: простое создание форм
  • 96716bcb926741e79bb1c284a88083ca.pngQuadTreeAndroid: дерево квадрантов для изображения
  • 96716bcb926741e79bb1c284a88083ca.pngDarylAndroidTracker: использование нескольких аналитик

7081c634ec176ab6b953d9d19e82a09a.pngРазработка
  • (+30) Как сделать свой С++ код кроссплатформенным?
  • (+27) Аспекты удачной архитектуры мобильных приложений
  • (+13) Виртуальная студия и захват движения используя HTC Vive
  • (+10) Типографика: процесс выбора шрифта
  • (+6) Запись WebRTC видеопотока с веб-камеры браузера с буксировкой на Amazon S3
  • (+2) Индейские хитрости проектировщика ПО. Выпуск 1
  • 8 мифов о мобильных интерфейсах
  • Shopify выпустил SDK для продажи товаров в Unity
  • 5 уроков старшего дизайнера Google Ричарда Фалчера
  • Microsoft закрывает Wunderlist и открывает To-Do
  • Цвет: как выбрать палитру для своей игры
  • Дизайн-линч: Парковки Санкт-Петербурга
  • UX-дизайн: чекбоксы и переключатели в формах
  • F8: Camera Effects Platform, AR Studio, Facebook Spaces и React VR
  • F8: Litho — декларативный UI-фреймворк для Android
  • F8: Messenger Platform 2.0
  • F8: Places Graph
  • F8: 360 Capture SDK
  • F8: Facebook открывает Кружки разработчиков
  • F8: Caffe2 — открытый фреймворк машинного обучения
  • 377ae0333d0f4b7b97307c9eea5ee21a.gifКак менялся дизайн CTA-кнопок за десятилетия
  • 377ae0333d0f4b7b97307c9eea5ee21a.gifCodeSandbox: онлайновый редактор React
  • 377ae0333d0f4b7b97307c9eea5ee21a.gifКак войти в игровую индустрию через программирование
  • 377ae0333d0f4b7b97307c9eea5ee21a.gifСоздание кроссплатформенного пользовательского интерфейса в 2017

509dc9bde69347ecbe0c21ff2973d7e7.jpgАналитика, маркетинг и монетизация
  • (+13) Десктоп еще не умер, но мобайл уже доминирует на всем рынке. Интервью с Дмитрием Навошей, CEO Sports.ru
  • (+10) Как Uber удается опережать конкурентов, или разбираемся, как работают платежи и финансы в компании
  • (+8) Конкурсы инди-игр: 12 советов для разработчиков
  • Сезонность проекта: не бойтесь летнего спада
  • Информация, время и сообщество: Как продвинуть свой продукт на Product Hunt
  • Newzoo: игры в этом году заработают $108.9 млрд
  • Mail.Ru Group расширяет возможности мобильной аналитики myTracker
  • Сколько времени и какими приложениями пользуются россияне
  • Facebook: не установки, а вовлеченность
  • 377ae0333d0f4b7b97307c9eea5ee21a.gif8 ключевых функций, которые делают приложение успешным

8538129f5e7b404a720121cb9c3814db.jpgУстройства и IoT
  • (+16) ESP8266 в качестве MQTT брокера для мобильного приложения
  • (+2) Пять принципов для создания защищенного «подключенного» автомобиля

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

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

© Habrahabr.ru