Как стать автором
Обновить

Компания MobileUp временно не ведёт блог на Хабре

Сначала показывать
  • Новые
  • Лучшие

iOS Storyboards: анализ плюсов и минусов, best practices

Блог компании MobileUp Разработка под iOS *Разработка мобильных приложений *


Apple создала Storyboards, чтобы разработчики могли визуализировать экраны iOS-приложений и связи между ними. Не всем понравился этот инструмент, и на то есть разумные причины. Я встречал много статей с критикой Storyboards, однако так и не нашел подробного и непредвзятого анализа всех плюсов и минусов с учетом best practices. В итоге я решил написать такую статью сам.
Читать дальше →
Всего голосов 32: ↑30 и ↓2 +28
Просмотры 14K
Комментарии 11

Смотрю и слушаю где хочу. Интегрируем Chromecast в Android-приложение

Блог компании MobileUp Работа с видео *Разработка мобильных приложений *Разработка под Android *Kotlin *
Tutorial


На улице я часто слушаю аудиокниги и подкасты со смартфона. Когда прихожу домой, мне хочется продолжить слушать их на Android TV или Google Home. Но далеко не все приложения поддерживают Chromecast. А было бы удобно.


По статистике Google за последние 3 года, количество девайсов на Android TV увеличилось в 4 раза, а число партнеров-производителей уже превысило сотню: «умные» телевизоры, колонки, TV-приставки. Все они поддерживают Chromecast. Но в маркете ещё много приложений, которым явно не хватает интеграции с ним.


В этой статье я хочу поделиться своим опытом интеграции Chromecast в Android-приложение для воспроизведения медиа-контента.

Читать дальше →
Всего голосов 18: ↑18 и ↓0 +18
Просмотры 9.4K
Комментарии 9

Все, что нужно знать об iOS App Extensions

Блог компании MobileUp Разработка под iOS *Разработка мобильных приложений *


App Extensions появились в iOS 8 и сделали систему более гибкой, мощной и доступной для пользователей. Приложения могут отображаться в виде виджета в Центре Уведомлений, предлагать свои фильтры для фотографий в Photos, отображать новую системную клавиатуру и многое другое. При этом сохранилась безопасность пользовательских данных и системы. Об особенностях работы App Extensions и пойдёт речь ниже.
Читать дальше →
Всего голосов 24: ↑24 и ↓0 +24
Просмотры 13K
Комментарии 4

Свежий взгляд на отображение диалогов в Android

Блог компании MobileUp Разработка мобильных приложений *Разработка под Android *


На картинке первая мысль читателя, который недоумевает, что можно написать про такую простую задачу как отображения диалога. Аналогично думает и менеджер: «Тут ничего сложного, наш Вася за 5 минут сделает». Я, конечно, утрирую, но на самом деле всё не так просто, как кажется на первый взгляд. Особенно если мы говорим про Android.


Итак, на дворе шёл 2019 год, а мы всё ещё не умеем нормально показывать диалоги.

Читать дальше →
Всего голосов 32: ↑30 и ↓2 +28
Просмотры 22K
Комментарии 24

Как тестировать смарт-контракты

Блог компании MobileUp Тестирование IT-систем *Node.JS *Solidity *
Tutorial
image

Условия смарт-контракта нельзя изменить. Поэтому всякий раз, когда вы создаёте смарт-контракт, нужно убедиться, что он работает правильно. Тестирование — безопасный способ проверить контракт в разных ситуациях. В этом туториале вы узнаете, какие шаги для этого нужно предпринять.
Читать дальше →
Всего голосов 20: ↑15 и ↓5 +10
Просмотры 5.7K
Комментарии 4

Как создавать нестандартные фигуры с помощью MaterialShapeDrawable

Блог компании MobileUp Разработка мобильных приложений *Разработка под Android *
Перевод
image

В Material Design 2.0 появилось несколько новых концепций. Одна из них — особое внимание к геометрическим формам элементов интерфейса. И есть простой способ делать красивые нестандартные формы. Он называется MaterialShapeDrawable. Давайте разберемся, насколько он полезен и прост в использовании.

Читать дальше →
Всего голосов 12: ↑12 и ↓0 +12
Просмотры 4.9K
Комментарии 1

Material 2.0 для разработчиков. Краткий обзор новых компонентов

Блог компании MobileUp Интерфейсы *Разработка под Android *Дизайн мобильных приложений *


В мае на Google I/O мы впервые увидели Material Design 2.0. Команда Google провела крупный рефакторинг и выпустила обновленную библиотеку дизайна. В ней появились новые компоненты и анимации. Мы следим за развитием Material Components с самого начала. Сейчас все находится на стадии RC1, и уже скоро выйдет в релиз. Под катом обзор новых и обновленных UI-компонентов для тех, кто еще не пробовал их в работе, но интересуется.

Читать дальше →
Всего голосов 28: ↑28 и ↓0 +28
Просмотры 41K
Комментарии 13

Что такое Scholarship от Apple и почему это больше, чем просто билет на WWDC

Блог компании MobileUp Разработка под iOS *Разработка мобильных приложений *Разработка под MacOS *Конференции

image


Билет на WWDC стоит $1600, и чтобы его получить, нужно участвовать в лотерее. Для студентов со всего мира Apple каждый год устраивает конкурс, в котором можно выиграть бесплатный билет на конференцию и получить другие приятные бонусы. В этом году мне повезло выиграть Scholarship. Я посетил конференцию, теперь готов поделиться впечатлениями и рассказать, чем мой билет на WWDC отличался от обычного.

Читать дальше →
Всего голосов 7: ↑7 и ↓0 +7
Просмотры 4.9K
Комментарии 0

Она вам не Android. Особенности разработки под Wear OS

Блог компании MobileUp Разработка мобильных приложений *Разработка под Android *Разработка для интернета вещей *



18 марта Google переименовала операционную систему для носимой электроники Android Wear и начала распространять её под именем Wear OS, чтобы привлечь новую аудиторию. Компания опубликовала новые дизайн-гайдлайны и обновила документацию. Когда я начал разработку приложения для часов, не нашел ни одной русскоязычной публикации на эту тему. Поэтому хочу поделиться своим опытом и рассказать подробнее про Wear OS, из чего она состоит и как с ней работать. Всех небезразличных к мобильным технологиям прошу под кат.

Поехали
Всего голосов 20: ↑19 и ↓1 +18
Просмотры 12K
Комментарии 14

Переход из тестировщика в руководители проектов

Блог компании MobileUp Тестирование IT-систем *Разработка мобильных приложений *Тестирование мобильных приложений *Управление проектами *


Обычно на должность руководителя проектов в IT-компании требуются люди с опытом от 1 года. Поэтому часто неопытные менеджеры устраиваются на работу аналитиками, тестировщиками, иногда даже разработчиками.


Если хорошо себя проявить, то со временем вам будут доверять больше управленческих задач. При этом не всегда получается отказаться от старых обязанностей. Приходится совмещать две роли на проекте. Так и я, имея опыт в тестировании и аналитике, дополнительно стала получать задачи руководителя проекта. Со временем я полностью перешла в управление проектами.


В этой статье я делюсь наблюдениями и выводами. Как в одном человеке конфликтуют привычки тестировщика и обязанности руководителя проекта? С какими проблемами приходится сталкиваться? Какую пользу можно извлечь при таком переходе? Если хотите получить ответы на эти вопросы, добро пожаловать под кат.

Читать дальше →
Всего голосов 23: ↑23 и ↓0 +23
Просмотры 20K
Комментарии 22

RxPM — реактивная реализация паттерна Presentation Model

Блог компании MobileUp Разработка мобильных приложений *Проектирование и рефакторинг *Разработка под Android *

Через полгода после выхода прошлой статьи о сравнении RxPM c другими презентационными паттернами мы с Jeevuz, наконец, готовы представить библиотеку RxPM — реактивную реализацию паттерна Presentation Model. Давайте сделаем небольшой обзор основных компонентов библиотеки и покажем, как их использовать.


Читать дальше →
Всего голосов 10: ↑10 и ↓0 +10
Просмотры 12K
Комментарии 3

Пулл-реквесты с эмпатией

Блог компании MobileUp Программирование *Проектирование и рефакторинг *Промышленное программирование *
Перевод


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

Разработка высококачественных программ сильно зависит от того, насколько качественное ревью кода делают коллеги. Это помогает обнаружить ошибки, избежать двойной работы и в целом обеспечить лучшее качество кода с меньшими усилиями. Код ревью — это критически важная часть процесса разработки.
Читать дальше →
Всего голосов 11: ↑11 и ↓0 +11
Просмотры 6.2K
Комментарии 8

Как сделать gif-анимацию для Behance и Dribbble?

Блог компании MobileUp Веб-дизайн *Дизайн мобильных приложений *
Tutorial


Дизайнерам бывает сложно переводить анимированный ролик в gif и подстраиваться под ограничения анимации для Behance и Dribbble.

Есть много статей о том, как быстро сделать анимацию в Principle, Flinto и других редакторах, но нет ничего о том, как её готовить конкретно для Behance и Dribbble.

Мы протаптывали эту тропинку сами и поняли, какой способ для нас оптимальный. Статья будет полезна тем, кто ещё не разобрался.
Читать дальше →
Всего голосов 8: ↑7 и ↓1 +6
Просмотры 40K
Комментарии 2

Шпаргалка по тестированию требований к мобильным приложениям

Блог компании MobileUp Разработка под iOS *Разработка мобильных приложений *Разработка под Android *Тестирование мобильных приложений *

Никто не любит наступать на одни и те же грабли. Чтобы избегать их на этапе анализа и тестирования требований, мы завели общую шпаргалку. Она включает в себя те вопросы, которые в идеале должны быть выявлены и зафиксированы до разработки. Мы используем её как чек-лист, с помощью которого стараемся глубже вникнуть в логику мобильного приложения и разобраться, какие потенциальные проблемы могут возникнуть у пользователя.


Статья ориентирована на тестировщиков, которых просят провести ревью ТЗ и найти в нём несоответствия, и на аналитиков, которым разработчики после прочтения ТЗ часто задают вопросы формата: «А что должно быть, если …?».

Читать дальше →
Всего голосов 15: ↑14 и ↓1 +13
Просмотры 56K
Комментарии 2

Заблуждения Clean Architecture

Блог компании MobileUp Программирование *Разработка мобильных приложений *Проектирование и рефакторинг *Разработка под Android *
Превращаем круги в блоки

­­ 


На первый взгляд, Clean Architecture – довольно простой набор рекомендаций к построению приложений. Но и я, и многие мои коллеги, сильные разработчики, осознали эту архитектуру не сразу. А в последнее время в чатах и интернете я вижу всё больше ошибочных представлений, связанных с ней. Этой статьёй я хочу помочь сообществу лучше понять Clean Architecture и избавиться от распространенных заблуждений.

Читать дальше →
Всего голосов 58: ↑56 и ↓2 +54
Просмотры 262K
Комментарии 194

Тестирование и обзор Core ML

Блог компании MobileUp Разработка под iOS *Разработка мобильных приложений *Swift *Машинное обучение *
Tutorial

На WWDC’17 Apple представила новый фреймворк для работы с технологиями машинного обучения Core ML. На основе него в iOS реализованы собственные продукты Apple: Siri, Camera и QuickType. Core ML позволяет упростить интеграцию машинного обучения в приложения и создавать различные «умные» функции с помощью пары строчек кода.


image

Читать дальше →
Всего голосов 17: ↑16 и ↓1 +15
Просмотры 19K
Комментарии 2

Туториал по AsyncDisplayKit 2.0 (Texture): автоматическая компоновка

Блог компании MobileUp Разработка под iOS *Разработка мобильных приложений *
Перевод
Tutorial


Добро пожаловать во вторую часть серии статей по AsyncDisplayKit (Texture)!


Система компоновки AsyncDisplayKit позволяет писать невероятно быстрый, декларативный код.


Помимо быстрой настройки, она автоматически адаптируется к устройству, на котором запущено приложение. Допустим, вы пытаетесь создать узел, который можно использовать во view controller приложения или в качестве popover в приложении для iPad. Если его layout будет правильно создан, вы сможете перенести узел в эту новую среду, не беспокоясь об изменении базового кода макета!

Читать дальше →
Всего голосов 10: ↑10 и ↓0 +10
Просмотры 5.6K
Комментарии 0

Туториал по AsyncDisplayKit 2.0 (Texture): Начало работы

Блог компании MobileUp Разработка под iOS *Разработка мобильных приложений *
Перевод
Tutorial


«Искусство – это все, что вы можете сделать хорошо. Все, что вы можете сделать качественно» (Robert M. Pirsig).


От переводчика:
С появлением autoLayout создавать интерфейс iOS-приложения стало намного проще и быстрее. Вам больше не нужно думать о подгонке размеров под определенные устройства, autoLayout сделает это за вас. Вычисление происходит на основе констрейнтов относительно ближайших элементов. Чем больше таких зависимостей, тем дольше будет строиться autoLayout, и это основная проблема всех приложений с сложным интерфейсом.
Использование AsyncDisplayKit позволит вам на порядок уменьшить объем работ, выполняемых в основном потоке, и реализовать сложные интерфейсы с минимальным количеством кода. Ребята из Raywenderlich сделали подробный и наглядный туториал по работе с ним. Надеюсь, что перевод статьи поможет вам ещё быстрее освоить этот фреймворк.
Читать дальше →
Всего голосов 12: ↑12 и ↓0 +12
Просмотры 11K
Комментарии 2

Системный подход к тестированию Android-приложений, или О чем молчали разработчики

Блог компании MobileUp Разработка мобильных приложений *Разработка под Android *Тестирование мобильных приложений *

У каждого тестировщика рано или поздно наступает неловкий момент. Обнаружился вредный баг и его необходимо локализовать. По закону подлости баг воспроизводится нестабильно, при непонятных шагах и только на некоторых устройствах. Есть логи, но они не информативны. Разработчик занимается новой функциональностью, он не может отвлечься от текущих задач, пока не будут найдены четкие шаги воспроизведения. Менеджер ждет исправления (надо быстрее, заказчик переживает).


Как внести ясность в такой ситуации? Некуда деваться, пора разбираться, что же там происходит «под капотом» приложения.


Читать дальше →
Всего голосов 17: ↑16 и ↓1 +15
Просмотры 21K
Комментарии 18

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

Блог компании MobileUp Разработка мобильных приложений *Проектирование и рефакторинг *Разработка под Android *

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


Все знакомы с MVP и MVVM, но мало кто знает, что MVVM является логическим развитием паттерна Presentation Model. Ведь единственное отличие MVVM от PM – это автоматическое связывание данных (databinding).


В этой статье речь пойдет о паттерне Presentation Model с реактивной реализацией биндинга. Некоторые ошибочно называют его RxMVVM, но корректно будет называть его RxPM, потому что это модификация шаблона Presentation Model.


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



Читать дальше →
Всего голосов 23: ↑20 и ↓3 +17
Просмотры 38K
Комментарии 42
1