«Кроссплатформенная разработка мобильных приложений...

Preview:

Citation preview

Кроссплатформенная разработка мобильных приложений для бизнеса

Александр ЕпифановTau Technologies

В чем проблема?

• Всеобщая мобилизация• В бизнесе• В обычной жизни

А вот в чем:

• Всеобщая мобилизация• В бизнесе• В обычной жизни

А вот в чем:

• Много устройств• 340 миллионов смартфонов

продано за год по данным IDC на 2-й квартал 2015

• Рост на 13%

• Всеобщая мобилизация

• В бизнесе• В обычной жизни

А вот в чем:

• Много устройств• 340 миллионов

смартфонов продано во 2-м квартале 2015 года

• Рост на 13% по сравнению с предыдущим кварталом

• Много платформ, и появляются новые

Потребители используют

Android

iOS

WinPhone

Прочие

По данным IDC Quarterly Report

Другие игроки

Разработка для нескольких платформ одновременно это:

• Сложно• Свой тулчейн для каждой

платформы• Продвинутые языки

• Сложно• Свой тулчейн для каждой

платформы• Продвинутые языки

Разработка для нескольких платформ одновременно это:

• Долго• Дизайн• Кодирование• Отладка• Тестирование

Разработка для нескольких платформ одновременно это:

• Сложно• Свой тулчейн

для каждой платформы

• Продвинутые языки

• Долго• Дизайн• Кодирование• Отладка• Тестирование

• Дорого• Потому что

сложно и долго

Где найти специалистов?

• C• C++• Java• C#• ObjectiveC• JNI• .NET• …...

Специфика требований бизнеса к разработке мобильного ПО

1 2 3

Бизнес использует

По данным Mobility Index Report

Промышленные устройства

• Значительную доля до сих пор принадлежит legacy устройствам на Windows Mobile/CE.

• Учитывая успехи Android, в среднесрочной перспективе эта система займет лидерство в данном секторе.

• Расширенная и нестандартная функциональность

• Зачастую устаревшие версии ОС ( WinCE6, Android 2.x.x )

• Большое количество legacy кода под Windows Mobile/CE

Промышленные устройства

Это не просто приложение на мобильном устройстве, а целый комплекс ПО, включающий в себя различные части на разных платформах.мобильные устройства ПК Серверная часть

БД

ServerWEB

Синхронизация

БД

ПК контент

МУ контент

Браузер

Браузер

Приложение

Приложение

Корпоративное приложение

Доступ к backend

• Можно пользоваться своим устройством на работе

• Но необходимо обеспечивать безопасность корпоративных ресурсов

BYOD* и MDM**

*Bring your own device** Mobile device management

Менее строгие требования к дизайну

Типы корпоративных приложений

• Складской учет• Управление оборудованием• Ритейл• CRM• ERP• Корпоративная почта• Корпоративные файлы• Мобильное рабочее место руководителя• Secure IM

• Плохо:• Нестандартные устройства и

платформы• Требования к безопасности• Сложности взаимодействия с

backend

Что хорошо и что плохо (для разработчика)

• Хорошо:• Нет строгих требований к UX• Нет необходимости

размещать приложение в магазине

• Интеграторы испытывают трудности при внедрении новых устройств

• У них нет возможности выбора аппаратной платформы• Кто-то должен взять поддержку устройств на себя

Куда податься интегратору?

Тренды

• Мобильность приходит на смену облакам. Потенциал рынка – 100млрд долларов

• Компании увеличивают бюджеты на мобильную разработку

• Мобильные рабочие места• HTML5 побеждает• Internet of Things

К концу 2017 года потребность рынка в мобильных приложениях будет расти в 5 раз быстрее

способности внутренней разработки IT компаний.(Gartner)

Существующие подходы и решения для кроссплатформенной разработки.

Чисто нативная разработка

ТехнологииХ

СпециалистыХ

Много платформХ

Фрагментация

=

ОЧЕНЬ ДОРОГО

Нативные приложения

Веб приложения

Гибридные приложения

Существующие решения. Плюсы и минусы.

Web приложения

• Уже есть сайт и нужно дополнить доступ к сервисам с помощью мобильного приложения

• Приложение работает в штатном веб-браузере системы и написано на HTML/JavaScript

• Функциональность приложения аналогична функциональности сайта

Web приложения

Простота разработки Переносимость — работает везде Можно использовать код сайта ( частично ) Приложение может создать веб-специалист Привычно для пользователей веб-сайта

Ограниченная функциональность. Нет доступа к аппаратным возможностям устройства

Не нативный UX Всегда нужно сетевое подключение Страдает производительность Проблемы на разных браузерах

Нативные приложения

• Один язык для всех платформ

• Оригинальный тулчейн• Оригинальный API

Нативные приложения

Доступ к основным возможностям устройства

Нативный UX/Look&feelМаксимальная производительность

Своя экосистемаПри необходимости сложно перейти на другое решение

Гибридные приложения

• Совмещает плюсы нативного и веб подхода

• Интерфейс работает в браузере, API реализован нативно

• Может использоваться как штатный, браузер так и встроенный веб движок

• Могут использоваться нативные UI компоненты

• Доступ к функциям устройства определяется конкретным используемым гибридным решением

Гибридные приложения

Широкоиспользуемые технологииПолноценная функциональностьНативные расширения только там, где

они нужныВендор обеспечивает совместимость

между платформами, браузерами, устройствами

Низкий порог вхождения в разработкуМожно выбирать различные решения

Не нативный UX Проблемы с производительностью в чисто

браузерных решениях

Некоторые гибридные и нативные решения

Xamarin

• Привычно для .NET разработчиков

• Можно разработать UI для каждой платформы отдельно

• Тестирование в облаке• Гибкая лицензионая

политика

Native

Appcelerator

• Один из пионеров современной кроссплатформенной мобильной разработки

• Обширное комьюнити• Компилируемый JavaScript• Облачные сервисы

Native

PhoneGap

• Стандарт де-факто для гибридной разработки

• Большое количество плагинов

• Обширное комьюнити• Обычные для гибридных

решений проблемы с производительностью

• Нет ориентации на enterprise

Hybrid

• Фокус на enterprise• Облачные сервисы• Экосистема,

предоставляющая полный цикл разработки

• Один из лидеров Gartner Magic Quadrant for Mobile Application Development Platforms

• Относительно дорогостояще решение

Kony

Hybrid

RhoMobile

• Основной фокус – enterprise• Из промышленных поддерживаются

только устройства Zebra• Оригинальная MVC архитектура,

аналогичная Ruby on Rails, что решает проблемы с производительностью

• Облачные сервисы• Data-driven apps со встроенным ORM и

backend синхронизацией• Не полностью OpenSource• Обширный API с доступом к

большинству возможностей устройства

Hybrid

Tau Platform

• Форк RhoMobile• Отечественный продукт• OpenSource поддержка

всех legacy устройств на WinMobile/CE

• Ведется разработка JS контроллеров и интеграция Webkit

• Поддержка последних версий iOS и Android

Hybrid

Почему мы за веб-технологии в гибридных системах?

+

JavaScriptJavaC#

PHPPython

C++ObjectiveC

C

0 200000 400000 600000 800000 1000000 1200000

Количество тэгов на Stackoverflow

Огромная популярность JavaScript

Простота

• Меньше штат• Проще код• Менее дорогостоящие

разработчики• Быстрее обучение

• HTML• JavaScript• CSS

Переносимость, особенно при использовании единого движка

Современные JS/CSS технологии позволяют добиться почти нативного UX

Мощный интерфейс

Облачные сервисы

• Сборка• Синхронизация данных• Распространение

приложений• Тестирование• Аналитика

Полный доступ к функциям устройства

• Камера• GPS• Акселерометр• Календарь и контакты• NFC• Сканер штрихкодов• Медиаплеер, диктофон• Распознавание жестов• Карты• Нативные UI компоненты• Сеть• Push-уведомления• You name it…

• Меньше кода• Можно использовать своих веб-

разработчиков• Работает везде• Полноценная функциональность• Можно расширить

существующие веб приложения• Снижение рисков

• PROFIT!

Дешевле!

Вопросы?Пишите на адрес aepifanov@tau-technologies.com

Наш сайт: http://tau-technologies.comGitHub: https://github.com/tauplatform

Спасибо. Мы будем рады вам.

Recommended