50
Цуканов Павел [email protected] et Skype: cpp.tula РАЗРАБОТКА МОБИЛЬНЫХ САЙТОВ.

РАЗРАБОТКА МОБИЛЬНЫХ САЙТОВ

Embed Size (px)

Citation preview

Page 1: РАЗРАБОТКА МОБИЛЬНЫХ САЙТОВ

Цуканов Павел[email protected]: cpp.tula

РАЗРАБОТКА МОБИЛЬНЫХ

САЙТОВ.

Page 2: РАЗРАБОТКА МОБИЛЬНЫХ САЙТОВ

О чём речь?• О том о чём вы и подумали – о

сайтах, которые вы можете просматривать на мобильных устройствах.

• Об истории – WAP, WML, XHTML, XHTML-MP

• Нужны ли они?

• О будущем – HTML5

• О jQuery Mobile Framework

Page 3: РАЗРАБОТКА МОБИЛЬНЫХ САЙТОВ

И так история• Экскурс в историю

• Всегда интересно узнать что было и к чему пришли.

• Много интересных абревиатур – WAP, WML, XHTML-MP

• WAP - Средство вытягивания денег

Page 4: РАЗРАБОТКА МОБИЛЬНЫХ САЙТОВ
Page 5: РАЗРАБОТКА МОБИЛЬНЫХ САЙТОВ

WMLWireless Markup Language (WML), основанный на XML, это язык разметки, предназначенный для устройств, которые реализуют Wireless Application Protocol (WAP) спецификацию, такие как мобильные телефоны. Он обеспечивает навигацию, ввод данных, гиперссылки, текст, изображение и формы, так же, как и HTML

Page 6: РАЗРАБОТКА МОБИЛЬНЫХ САЙТОВ

WML

Page 7: РАЗРАБОТКА МОБИЛЬНЫХ САЙТОВ

XHTMLXHTML является HTML написанный с синтаксисом XML.Теги в XHTML такие же, как и в HTML. XHTML имеет чистые и строгие структуры, который облегчит обработку документов. Это особенно важно для беспроводных устройств, таких как мобильные телефоны, имеют ограниченные вычислительные мощности. Все основные веб-браузеры поддерживают XHTML.

Page 8: РАЗРАБОТКА МОБИЛЬНЫХ САЙТОВ

XHTML

Page 9: РАЗРАБОТКА МОБИЛЬНЫХ САЙТОВ

XHTML - BasicXHTML Basic представляет собой упрощенную версию XHTML. Она предназначена для устройств с ограниченной вычислительной мощностью и возможностями, таких как мобильные телефоны, КПК, смарт-часы, пейджеры и т.д. XHTML Basic не содержит XHTML особенностей, которые трудно поддерживать на этих устройствах. Например, каскадные таблицы стилей, фреймы и сценарии не поддерживаются в XHTML Basic. Пример на

http://www.w3.org/People/mimasa/test/schemas/xhtml-basic-sample.xml

Page 10: РАЗРАБОТКА МОБИЛЬНЫХ САЙТОВ

XHTML MP (Mobile Profile)XHTML Mobile Profile является официальным языком разметки в самой последней версии WAP 2.0. Это определено WAP Forum. WAP Forum создала XHTML Mobile Profile основываясь на XHTML Basic, с добавлением некоторых элементов и атрибутов из полной версии XHTML, таких как <i>, <b>, <small>, <big> и <hr>. XHTML Mobile Profile поддерживает упрощенную версию каскадных таблиц стилей называется WCSS / WAP CSS.

Page 11: РАЗРАБОТКА МОБИЛЬНЫХ САЙТОВ

XHTML MP

Page 12: РАЗРАБОТКА МОБИЛЬНЫХ САЙТОВ

XHTML MP

Page 13: РАЗРАБОТКА МОБИЛЬНЫХ САЙТОВ

HTML5• 5-ая версия HTML.

• До сих пор находится в разработке!

• Поддержка сильно зависит от браузера

• Проверить свой браузер на готовность к HTML5 можете на http://html5test.com/

Page 14: РАЗРАБОТКА МОБИЛЬНЫХ САЙТОВ

Откуда дровишки?

115Кбит/с

473,6 Кбит/с

3,6 Mбит/с

600 Mбит/с (в теории)

1 Гбит/с (в теории)

Page 15: РАЗРАБОТКА МОБИЛЬНЫХ САЙТОВ

Браузеры

• Встроенные. Предустановлены изготовителем телефонов. Последние версии подддерживают как минимум XHTML-MP.

• Устанавливаемые. Самые известные−Opera Mini, Mobile−Google Chrome− Firefox

Page 16: РАЗРАБОТКА МОБИЛЬНЫХ САЙТОВ

Джентельментский набор

• Смартфон на Android

• IPhone, IPad

• Windows Phone

• Blackberry

Page 17: РАЗРАБОТКА МОБИЛЬНЫХ САЙТОВ

Так в чём же проблемаразработать мобильныйсайт?

• Маленький экран.• Другой метод ввода информации.• “Толстые пальцы”.• Проблема низких скоростей и

ограничений траффика всё ещё актуальна.

Page 18: РАЗРАБОТКА МОБИЛЬНЫХ САЙТОВ

Мобильный сайт, Обычный сайт или приложение?

Исследования проведённые экспертом по юзабилити Якобом Нельсоном (http://www.useit.com/alertbox/mobile-usability.html) показывают1. Для мобильных пользователей нужен

отдельный сайт.2. Нужна связь между мобильным и

обычным сайтом.3. Приложения предпочтителнее если ваши

услуги ориентированы на мобильное использование

Page 19: РАЗРАБОТКА МОБИЛЬНЫХ САЙТОВ

Рекомендации

• Существуют множество рекомендаций но основные сводятся к следующим приципам−Сокращение функциональности,

необходимо устранить вещи, неявляющимися основными на мобильном сайте;

−Сокращение содержание, необходимо уменьшить количество слов на основных страницах и переместить вторичную на других страницах

− Увеличить элементы интерфейса, для решения проблемы "толстых пальцев".

Page 20: РАЗРАБОТКА МОБИЛЬНЫХ САЙТОВ

Однако не все с этим согласны

• Далеко не всем понравится урезанная версия сайта

• Растёт количество смартфонов, планшетников для которых такие ограничения становятся менее актуальны. В США 25% людей используют мобильные устройства как единственный способ выхода в Интернет.

• Однако в других странах преобладает выход в Интернет с низкобюджетных устройств

Page 21: РАЗРАБОТКА МОБИЛЬНЫХ САЙТОВ

Немного цифр

Page 22: РАЗРАБОТКА МОБИЛЬНЫХ САЙТОВ

Best practices• http://www.w3.org/TR/mobile-bp

• http://mobilewebslinger.com/2012/04/20/16-mobile-website-best-practices/

• http://sixrevisions.com/web-development/mobile-web-design-best-practices/ (Содержит ссылки на эмуляторы мобильных устройств).

Page 23: РАЗРАБОТКА МОБИЛЬНЫХ САЙТОВ

Мои рекомендации• Определится с целевой

аудиторией вашего сайта

• Если это пользователи с низкобюджетными устройствами, то использовать XHTML-MP

• Если хотите больше – HTML5

• Список браузеров и их характеристик можно найти на http://www.quirksmode.org/mobile/

Page 24: РАЗРАБОТКА МОБИЛЬНЫХ САЙТОВ

Небольшой демо сайт• На http://

tuladev.sitesmobile.codereign.net представлен небольшой демо сайт с примерами из текущего доклада.

• Можете взять IPad или IPhone и попробовать как это работает.

• После запуска сайта вы увидите, возможности HTML5 на мобильных устройствах

• Итак по порядку.

Page 25: РАЗРАБОТКА МОБИЛЬНЫХ САЙТОВ

Viewports

Page 26: РАЗРАБОТКА МОБИЛЬНЫХ САЙТОВ

Visual viewport, Layout viewport

Page 27: РАЗРАБОТКА МОБИЛЬНЫХ САЙТОВ

Viewport на демо сайте

• Устанавливает ширину = физической ширине устройства

• Без начального масштабирования

• С максимальным масштабированием = 2

• А это наиболее часто встречаемая комбинация параметров.

Page 28: РАЗРАБОТКА МОБИЛЬНЫХ САЙТОВ

Video

Page 29: РАЗРАБОТКА МОБИЛЬНЫХ САЙТОВ

Video

Page 30: РАЗРАБОТКА МОБИЛЬНЫХ САЙТОВ

Audio

Page 31: РАЗРАБОТКА МОБИЛЬНЫХ САЙТОВ

Audio

Page 32: РАЗРАБОТКА МОБИЛЬНЫХ САЙТОВ

Input Text pattern="[0-9]*"

Page 33: РАЗРАБОТКА МОБИЛЬНЫХ САЙТОВ

Input Numbers

Page 34: РАЗРАБОТКА МОБИЛЬНЫХ САЙТОВ

Input Phone

Page 35: РАЗРАБОТКА МОБИЛЬНЫХ САЙТОВ

Link Call Phone, Send SMSMMS

Page 36: РАЗРАБОТКА МОБИЛЬНЫХ САЙТОВ

Input E-Mail

Page 37: РАЗРАБОТКА МОБИЛЬНЫХ САЙТОВ

Input File

Page 38: РАЗРАБОТКА МОБИЛЬНЫХ САЙТОВ

Input DateTime

Page 39: РАЗРАБОТКА МОБИЛЬНЫХ САЙТОВ

Input URL

Page 40: РАЗРАБОТКА МОБИЛЬНЫХ САЙТОВ

Javascript• Добавилась поддержка касания

• Можно отлавливать такие события как− touchstart− touchend− touchmove− touchcancel

• Touch != Mouse

• В теории touch должен вызывать только на события касания, а не события мыши.Однако, слишком много вебсайтов используют события мыши, поэтому производители браузеров вынуждены поддерживать их.

Page 41: РАЗРАБОТКА МОБИЛЬНЫХ САЙТОВ

Тестирование

• Нет ничего лучше чем реальное устройство.

• Но если его нет - есть эмуляторы. Но они к сожалению не всегда повторяют поведение устройства.

• Уже упоминал но повторю ссылку с эмуляторами http://sixrevisions.com/web-development/mobile-web-design-best-practices/

• И http://www.asp.net/Mobile/device-simulators

Page 42: РАЗРАБОТКА МОБИЛЬНЫХ САЙТОВ

JQuery Mobilehttp://jquerymobile.com

• Apple iOS: iPhone, iPod Touch, iPad (все версии)

• Android: все устройства (все версии)

• Blackberry

• Windows Phone

• ОЧЕНЬ внушительный список поддерживаемых браузеров на http://jquerymobile.com/gbs/

Page 43: РАЗРАБОТКА МОБИЛЬНЫХ САЙТОВ

Ключевые особенности

• Построенный на JQuery знакомый синтаксис

• Совместимость со всеми основными мобильными платформами — iOS, Android, Blackberry, Palm WebOS, Nokia/Symbian, Windows Mobile, bada, MeeGo и с базовой поддержкой всех устройств которые понимают HTML

• Небольшой размер файла (12кб включающий функциональность для всех мобильных) и минимальная зависимость от изображений для увеличения скорости

• Автоматическая инициализация с помощью HTML5 date-role атрибутов в разметке HTML, автоматически инициализирует все JQuery Mobile виджеты найденные на странице.

• Простое API, рационализирующее процесс поддержки Touch, мыши, и других видов устройств ввода.

• Новые модули расширяющие возможности сенсорного управления.

• Мощные темы визуализации приложения делают весьма простым построение интерфейсов.

Page 44: РАЗРАБОТКА МОБИЛЬНЫХ САЙТОВ

Типичный шаблон

Page 45: РАЗРАБОТКА МОБИЛЬНЫХ САЙТОВ

Результат

Page 46: РАЗРАБОТКА МОБИЛЬНЫХ САЙТОВ

JQuery Mobile версиямоего примера

• Использовать реально легко.

• Очень доступная и понятная документация. Все доступные возможности на http://jquerymobile.com/demos/1.1.1/

• Поддержка как стандартных элементов ввода так и своих.

• Решена моя головная боль – фиксированный Header/Footer.

• Хотя без сюрпризов не обошлось. Framework по умолчанию загружает ссылки через AJAX.

Page 47: РАЗРАБОТКА МОБИЛЬНЫХ САЙТОВ

Конструктор

Page 48: РАЗРАБОТКА МОБИЛЬНЫХ САЙТОВ

Редактор тем

Page 49: РАЗРАБОТКА МОБИЛЬНЫХ САЙТОВ

Таким образом

• Минимум кодирования превращает ваш HTML в мобильный.

• Мало того использование AJAX при загрузке страниц уменьшает скорость загрузки и соответственно траффик.

• На сайте можно запустить билдер, который позволит создать свою версию Framework с только необходимыми контролами.

• На сайте есть неплохая подборка реальных мобильных сайтов на JQuery Mobile.

Page 50: РАЗРАБОТКА МОБИЛЬНЫХ САЙТОВ

Пожалуйста, Ваши Вопросы!!!