Опубликован: 12.12.2015 | Доступ: свободный | Студентов: 665 / 96 | Длительность: 15:42:00
Лекция 1:

Разработка web-приложений Tizen

Лекция 1 || Лекция 2 >

В рамках предлагаемого курса предполагается обучение студентов разработке мобильных веб-приложений под Tizen. На компьютерах учащихся может быть установлен как Windows, так и Linux. Перед началом занятий необходимо скачать и установить набор разработчика Tizen SDK с сайта https://developer.tizen.org/downloads/tizen-sdk. Для разработки веб-приложений можно воспользоваться бесплатной пробной версией MS Visual Studio 2010 Express, загрузив ее с сайта http://www.microsoft.com/ru-ru/softmicrosoft/VisualStudioExpress.aspx.

Введение в Tizen

Что касается операционных систем, оптимизированных под мобильные приложения то, Tizen, безусловно, новый игрок. Это уникальная платформа, разрабатываемая в партнерстве Samsung, Intel, и Linux Foundation, которая должна в ближайшее время заработать на самых разных устройствах. Как Tizen OS, так и API-интерфейсы постепенно входят в стадию зрелости. При разработке архитектуры Tizen основной упор делается прежде всего на стандартные технологии.

Вне зависимости от того, использует ли программист официальный набор разработчика (SDK) или другие средства разработки, приложения, написанные для Tizen’s Web Framework, могут легко портироваться на другие платформы, использующие веб-стандарты. Будучи новой технологией, Tizen выиграет еще больше от портирования на него уже существующих веб-приложений.

Перспективы использования Tizen помимо мобильных приложений

С одной стороны, разработчикам и пользователям выгодно, что приложения, написанные под Tizen, работаю на разных операционных системах, с другой стороны, развитие Tizen стимулирует развития рынка новых перспективных мобильных устройств. Приложения Tizen, основанные на WebAPI одинаково хорошо подходят и для GPS-навигаторов с низким энергопотреблением, и для мощных планшетов и ноутбуков. Программное обеспечение, использующее API для портативных устройств, можно использовать многократно, что благотворно скажется на снижении издержек при проектировании устройств.


Нужно отметить, что платформа Tizen поддерживает также ценную, хотя и пока нестандартную инфраструктуру. Преимущества лежат между ядром GNU/Linux и фреймворками Tizen. А именно, вместо Qt или Gtk используются библиотеки Enlightenment Foundation Libraries (EFL), снабжающие Tizen виджетами и поддерживающие блоки для построения графики.

Хотя приложения, основанные на EFL, построенные на базе Линукс-подобных ядер, используют портативный и стандартный язык ISO C, не следует ожидать, что они запустятся на Windows Phone, iOS, или Blackberry 10. Здесь мы сузим рассмотрение материала такими веб-технологиями, как JavaScript, CSS, and HTML.

HTML5



Большинство разработчиков современных веб-приложений оценили богатый набор функций, предоставленных последних стандартах в HTML5, CSS3, JavaScript, а также связанных с ними веб-технологиях, таких как XMLHttpRequest (XHR) или различных библиотеках JavaScript. На самом деле эти веб-интерфейсы так часто смешивают, что многие относятся к ним просто, как "HTML5", не говоря уже о том, что сам стандарт HTML5 продолжает развиваться.

Архитектура Tizen

Рабочая группа разработчиков Tizen заявила в качестве своей цели, что ядро, фреймворк и уровень приложений должны осуществлять надежную поддержку HTML5, а также обеспечивать кроссплатформенную гибкость, дающую новые возможности разработчикам. "The Tizen SDK и API позволяют разработчикам использовать HTML5 и родственные технологии для написания приложения на множестве сегментов устройств, включающем смартфоны, планшеты, смарт-TV, автомобильные информационно-развлекательные системы и нетбуки".

Архитектура Tizen SDK

увеличить изображение
Архитектура Tizen SDK

Вендоры и сегменты устройств

В силу открытости системы вендоры могут модифицировать операционную систему и некоторые ключевые системные компоненты под свои нужды. Например, при разработке автомобильных информационно-развлекательные систем помимо EFL можно использовать Qt. Дистрибутив Tizen можно адаптировать под разную архитектуру, например, под IA32 или ARMv71.

Различные варианты Tizen объединяет то, что их компоненты расположены на подобии бутерброда, с приложениями, опирающихся на слой фреймворков, который, в свою очередь лежит на ядре. Каждый слой сам по себе является набором компонентов, в том числе слой, состоящий из ядра Линукс, драйверов устройств и различных низкоуровневых API и подсистем.

Web Runtime и Web Framework

Сходство между Tizen Browser и Web Runtime

Сходство между Tizen Browser и Web Runtime

Одним из самых важных компонентов системы является Tizen Web Runtime – компонент, позволяющий веб-приложениям запускаться отдельно от браузера. Пользователи Tizen могут инсталлировать и использовать веб-приложения, как если бы они были отчуждаемыми приложениями, в то время как Web Runtime управляет жизненным циклом, системными вызовами, запуском на выполнение, ресурсами, интеграцией с платформой, а также контролем доступа к веб-приложениям.

Названный аналогично, Web Framework агрегирует Web Runtime наряду с W3C API, Device API, и UI-фреймворком, содержащем виджеты, полученные из jQuery Mobile.

Используя стандартный W3C и уникальные API устройств, Tizen предлагает дополнительные возможности для веб-приложений, которые в противном случае использовали бы только HTML и стандартный JavaScript.

Tizen W3C API реализуют стандарты, основанные на DOM, стилях, графике, мультимедиа, хранении данных, безопасности, пользовательском интерфейсе, определении местоположения и виджетах. Device API предоставляют дополнительную логику, использующую сенсоры, ввод-вывод, захват изображения, телефонию, радио, распознавание речи, вывод HDMI и многое другое.

Адаптация WebKit


Для отображения веб-контента Tizen Web Runtime использует движок разметки WebKit схожим образом с Android, Chrome, Safari, MeeGo, Qt, и рядом других WebKit – зависимых проектов.

Фактором при выборе соответствующей библиотеки JavaScript является степень поддержки WebKit, а также поддержка движка среды, на которой будет портироваться разрабатываемое ПО.

Ядро GNU/Linux

Ядро Tizen GNU/Linux и другие источники данных доступны онлайн. Любой разработчик может сформировать свой образ инсталляции.

Лекция 1 || Лекция 2 >