1.3 Как работает wpa
WPA делится на две основные части: Service Worker и оболочка приложения. Оболочка приложения должна:
Быстро загружаться;
Быть кэшируемой;
Динамично отображать контент.
1.4 Service Worker
Service Worker, по большому счету, существует, чтобы обеспечивать нас дополнительными характеристиками, не свойственными браузерам до недавнего времени. Например:
Push-уведомления, чтобы оповестить пользователя о каком-то событии, вроде нового сообщения или что страница, которую они просматривали, обновилась.
Синхронизация, для обновления данных, пока клиент не использует страницу/сайт.
Оффлайн кэширование, которое позволяет сохранить доступ к некоторым функциям сайта в отсутствие подключения к сети.
Определение геоположения или других данных устройства (таких как данные гироскопа устройства).
Данные, загружающиеся предварительно – те, которые скоро понадобятся пользователю, например, изображения, расположенные ниже по странице.
Servis Worker является посредником между сайтом и браузером. Он отвечает за перехват ваших запросов для браузера и ищет ответы, которые он предоставляет. Это дает возможность сохранять копию запрошенных данных, чтобы, когда она снова понадобится, ее можно тут же извлечь. То есть мы можем загружать данные один раз, а потом снова открывать их без необходимости повторной загрузки. К примеру, можно провести параллель с музыкантами, которые записывают альбом, и им больше не нужно играть каждую композицию снова и снова каждый раз, когда вы хотите послушать их музыку. Тот же принцип, но с интернет-данными.
Планируется, что в будущем Service Worker будет иметь еще больший функционал, чем сегодня. Уже сегодня у него достаточно функций, которым можно найти применение.
2. HTML5
HTML5 - это не продолжатель языка разметки гипертекста, а новая открытая платформа, предназначенная для создания веб-приложений использующих аудио, видео, графику, анимацию и многое другое.
В отличие от предыдущих стандартов, предназначенных в основном для разработчиков кода, HTML5 строго и подробно описывает поведение браузеров. Он требует от браузеров обрабатывать не только грамотный код, но и по возможности корректировать ошибки, вплоть до употребления отсутствующих в стандарте элементов.
В HTML5 добавилось много различных функций. Для статей, блогов, документации и подобных материалов будут полезны элементы article и section, а также новая система заголовков и рубрикации. «Шапка» и «подвал», панель навигации и боковая панель обозначаются элементами header, footer, nav и aside. Для мультимедийного содержания появились элементы audio и video. В страницу внедряют соответствующий ресурс и обеспечивают стандартные элементы управления - кнопки запуска, паузы и остановки, проматывание, регулятор громкости. Для тех браузеров, где эти элементы не поддерживаются, HTML5 позволяет дополнить их альтернативным содержанием - например, роликом Flash, с помощью которого сейчас внедряется большинство аудио- и видеозаписей.
В стандарте предлагается элемент datagrid для организации динамических структур данных, элемент command для вызова пользовательских команд, элемент progress - индикатор хода выполнения операции, а также средства DOM для редактирования содержания прямо на веб-странице, перетаскивания, выделения, работы с буфером обмена и многого другого. Это отвечает общей тенденции развития Всемирной Паутины: если раньше сайты были чем-то вроде публикаций, то теперь они превратились в полноценные приложения, требующие функционального и удобного пользовательского интерфейса. Соответственно, HTML5 является не столько языком публикаций, сколько языком описания приложений.
