Проект TAU Platform — кросс-платформенная разработка мобильных приложений (Константин Рыбас, OSSDEVCONF-2015) — различия между версиями
Материал из 0x1.tv
StasFomin (обсуждение | вклад) |
StasFomin (обсуждение | вклад) |
||
== Примечания и отзывы == <!-- <blockquote>[©]</blockquote> --> <references/> <!-- topub --> {{stats|disqus_comments=0|refresh_time=2018-012-10T20:34:5813T16:44:50.495481803025|vimeo_comments=0|vimeo_plays=7591|youtube_plays=0}} [[Категория:OSSDEVCONF-2015]] [[Категория:TAU-платформа]] |
Версия 13:45, 13 февраля 2018
Аннотация
- Докладчик
- Константин Рыбас
Для мобильных/встроенных устройств имеется набор различных платформ(операционных систем) с разной спецификой — это ощутимая проблема. Чтобы приложения работали на всех основных платформах приходиться нанимать специалистов с совершенно разными навыками.
Так например в зависимости от задач может понадобиться:
- набрать программистов под разные OS (iOS, Android, Windows Phone, Blackberry, Windows Embedded, Linux Embedded)
- cоздать проектную команду с синхронизацией разработки и тестирования под разные операционные системы
Открытый программный продукт TAU Platform 1 является решением для кросс-платформенной разработки мобильных/встроенных, а также настольных приложений, то есть позволяет написать код один раз, который будет работать везде.
Видео
Слайды
Расширенные тезисы
Решение TAU Platform это «гибридное» решение. Исходный код приложения представляет из себя набор HTML/CSS/JS файлов + кода на языке Ruby (опционально). Приложение при запуске открывает WebView (возможно несколько в отдельных Tab-ах), в котором отображается контент. При использовании Ruby, архитектура похожа на решение Ruby on Rails, только при этом веб сервер с виртуальной Ruby машиной запущен прямо на устройстве. Как из JavaScript, так и из Ruby доступны различные API для доступа к функционалу устройства — файловой системе, камере, системным функциям, данным (календарь, контакты) и т.п. Также имеется набор модулей для доступа к различным capabilities, например распознаванию штрих-кодов или работе с картами. Разработчики могут легко дополнять функционал новыми модулями с помощью соответствующего инструментария.
Вызовы различного API из WebView происходят путем отправки запросов локальному HTTP серверу, который в свою очередь в случае использования Ruby-кода обращается к виртуальной Ruby машине, а в случае использования JavaScript непосредственно к реализации соответствующего API через внутренние врапперы. На данный момент мы ведем работу по кастомизации свободного движка для отображения веб-страниц WebKit, что даст продукту неоспоримые преимущества в части полного контроля над отображением контента.
Также в ближайшее время в решение будет добавлена виртуальная JavaSciprt машина, что даст возможность вынести бизнес-логику, написанную на JavaScript из WebView и поместить в отдельные контроллеры в отдельном потоке. Также это даст возможность комфортно отлаживать JavaScript код из IDE.
Если говорить о такой актуальной теме, как синхронизация данных между мобильными устройствами и хранилищами данных, то в TAU Platform включен клиентский модуль, позволяющий синхронизировать данные через специальный интеграционный сервер.
Также наша команда планирует работу по созданию облачных сервисов. Облачные сервисы подразумевают под собой такие возможности, как сборка, тестирование и дистрибуция приложений в облаке, а также разворачивание интеграционных серверов в облаке для синхронизации данных с такими бэкендами, как например SAP, Oracle, SalesForce,1C, Парус и любыми другими. Также возможна интеграция с IoT сервисами, например с Zatar(zatar.com). В этом направлении возможно наше партнерство с компанией IBM, от который мы получили соответствующее предложение.
Примечания и отзывы
Plays:91 Comments:0