Дайджест интересных материалов для мобильного разработчика #188 (23-29 января)

В этой еженедельной подборке вы найдете архитектуру Uber, половинки квадрата от Папы, отзывы и иконки в новой iOS, борьбу с Xiaomi, новую версию Qt и много другого интересного!

051475157c1c45228382e2a0ed2b4779.png

b743ef2cc1844a528f1834f510c6f98a.png

Повесть о невозможном баге: big.LITTLE и кэширование

Архитектура ARM big.LITTLE является первым массово производимым примером архитектуры AMP, и как мы увидим далее, она поднимает планку сложности многоядерного программирования еще выше.
89f825d9072445d9b3559d74df1e108f.jpg

Разработка архитектуры нового приложения для пассажиров Uber

Разработчики Uber опубликовали в блоге компании заметку про опыт переноса приложения с одной архитектуры на новую, собственную. Это очень масштабное мероприятие подтверждает, что Uber — далеко не элементарное приложение.
78c982a436fd4fac898db8c220d4786a.jpg

Половинки квадрата

При работе с сетками возникает столько сладких задач, что от вожделения поскорее их решить, пот капает с пальцев на клавиатуру. Одна из таких задач — заполнить матрицу случайными значениями. Например, есть сетка 5×5, которую надо заполнить 24 шариками 4 цветов. Должно быть 6 шариков каждого цвета и одна дырка…
f6a6c2e5e25544b382683409b8261a08.jpg

Анализируй это: как Skyeng выбирала систему продуктовой аналитики для мобильных приложений

Для того, чтобы развивать продукты в нужном (и прибыльном) направлении, необходимо тщательно отслеживать поведение пользователей и их реакцию на те или иные изменения. Мы в Skyeng уделяем много внимания аналитике, и в этой статье расскажем про то, как с помощью чего отслеживаем показатели наших мобильных приложений Aword и Words.

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

f1930ac4945596eb9707bc7a01bc5bdc.pngiOS

  • (+22) Многопоточность (concurrency) в Swift 3. GCD и Dispatch Queues
  • (+14) Немного о Swift runtime или куда пропал NSObject
  • (+13) 33 iOS библиотеки с открытым исходным кодом, которые будут популярны в 2017 году
  • (+12) Оптимизация механики и графики в игре жанра «симулятор» на iOS
  • (+8) iOS: Работа с галереей (Photos framework). Часть 2
  • Почему у иконок в iOS такая форма?
  • Apple позволит разработчикам отвечать на отзывы
  • В iOS 10.3 можно будет менять иконку приложения без его обновления
  • 377ae0333d0f4b7b97307c9eea5ee21a.gifРуководство по созданию дополненной реальности в iOS
  • 377ae0333d0f4b7b97307c9eea5ee21a.gifЗа пределами ограничений: Создаем iOS-анимации при помощи Auto Layout
  • 96716bcb926741e79bb1c284a88083ca.pngDGNotifyView: анимированные уведомления
  • 96716bcb926741e79bb1c284a88083ca.pngCRPageViewController: библиотека для листания карточек
  • 96716bcb926741e79bb1c284a88083ca.pngFiber2D: кроссплатформенный игровой движок на Swift
  • 96716bcb926741e79bb1c284a88083ca.pngFiles: удобный API для работы с файловой системой

e1a3cf2a8b65a0da69bbdd5c0ad040fe.pngAndroid
  • (+107) Ломаем Android. Как глубока кроличья нора?
  • (+67) Ещё немного про телефоны Xiaomi и борьбу с ними
  • (+31) Обзор Android Shortcuts
  • (+6) Подключаем ККМ АТОЛ к AndroidStudio (обновление к ФЗ-54)
  • (+6) Clean Recycler Adapter. Часть 1
  • В Google Play можно публиковать приложения для Daydream
  • Вышла последняя developer preview версия Android Wear 2.0
  • 20 Open Source проектов для Android, которые могут научить вас новому
  • Google начинает тестирование Instant Apps
  • 377ae0333d0f4b7b97307c9eea5ee21a.gifДелаем сайт на React на Android-устройстве
  • 377ae0333d0f4b7b97307c9eea5ee21a.gifЛучшие практики Push-уведомлений в Android
  • 377ae0333d0f4b7b97307c9eea5ee21a.gifObjectBox — новая мобильная база данных
  • 377ae0333d0f4b7b97307c9eea5ee21a.gifВыбор элементов RecyclerView перетаскиванием
  • 377ae0333d0f4b7b97307c9eea5ee21a.gifУправление Wi-Fi при помощи WifiManager
  • 377ae0333d0f4b7b97307c9eea5ee21a.gifФишки для Android-разроаботчиков: градиент
  • 377ae0333d0f4b7b97307c9eea5ee21a.gifКруговая анимация переходов между Фрагментами
  • 377ae0333d0f4b7b97307c9eea5ee21a.gifMVC vs. MVP vs. MVVM на Android
  • 96716bcb926741e79bb1c284a88083ca.pngBadger: бейджи для drawable
  • 96716bcb926741e79bb1c284a88083ca.pngPreviewSeekBar: полоска перемотки с превью (как в Google Play Movies)

7081c634ec176ab6b953d9d19e82a09a.pngРазработка
  • (+39) Выпуск фреймворка Qt 5.8
  • (+31) Лучшие доклады Mobius 2016: Рейтинг и видеозаписи
  • (+26) Закруглённые изображения на Qt Quick Scene Graph
  • (+22) Наблюдаемые модели в Realm Xamarin
  • (+20) 7 сервисов для поиска уязвимости мобильных приложений
  • (+17) IAP в Unity3D
  • (+14) Комфорт пользователей в VR: учёт параметров игрока
  • (+13) Дизайн мультиязычных приложений
  • (+12) Видеозаписи докладов конференции мобильных разработчиков MBLTdev 16
  • (+6) Нативный код Android и iOS в Qt на примере status bar
  • (+3) Погружение в Глубину: как вместить реальность в маленькую коробочку и как сделать качественный проект
  • Лекционный день по игровой индустрии в ВШБИ
  • Чашка кофе и экраны в приложении
  • Подкаст Апперетив: разработка в Lingualeo
  • Realm выпускает Mobile Platform 1.0
  • 377ae0333d0f4b7b97307c9eea5ee21a.gifКак Ionic вошел в Топ-50 проектов GitHub
  • 377ae0333d0f4b7b97307c9eea5ee21a.gifОдин дизайн-фреймворк, чтобы править всеми
  • 377ae0333d0f4b7b97307c9eea5ee21a.gifКраткое руководство по тестированию мобильных интерфейсов

509dc9bde69347ecbe0c21ff2973d7e7.jpgАналитика, маркетинг и монетизация
  • (+18) Базовый курс по мобильному арбитражу от Mobio
  • «Советы по приобретению и вовлечению пользователей от игровых ниндзя» от Tune
  • Facebook тестирует рекламу в Messenger
  • Трафик из мобильных приложений vs узнаваемость бренда: как выглядит успешная кооперация

8538129f5e7b404a720121cb9c3814db.jpgУстройства и IoT
  • (+25) Arduino на автомойке
  • (+14) Visual C++ for IoT Development: Прорыв или разочарование?
  • (+12) Грузовики и рефрижераторы в облаке
  • Tarantool упростит разработку приложений для Tizen
  • Разработчики Raspberry Pi получат ИИ от Google
  • 377ae0333d0f4b7b97307c9eea5ee21a.gifОсновы Android Things: измерение расстояния с помощью ультразвукового сенсора

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

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

© Habrahabr.ru