Технология пользовательских интерфейсов Web 2.0

Из дипломной работы Зайцевой А. Ю. ("Разработка Web-сервера онтологий")
В настоящее время Web-сайты являются важнейшими составляющими бизнеса, а инструментальные средства для создания и развертывания Web-сайтов становятся все более гибкими и простыми в использовании. Однако создание сложных Web-приложений, использующих не совсем стандартные методы взаимодействия (например, блоги), не является тривиальной задачей.
Как говорилось выше Web-сервер онтологий необходимо разрабатывать в стиле Web 2.0. Применение данной технологии позволит достичь решения задач, поставленных перед сервером, важнейшей из которых является предоставление пользователям возможности совместной работы над онтологиями.
Рассмотрим более подробно данную технологию.
Появление термина Web 2.0 принято связывать со статьей «Tim O’Reilly – What Is Web 2.0» от 30 сентября 2005 года, впервые опубликованной на русском языке в журнале «Компьютерра» (№№ 37 (609) и 38 (610) от 11 и 18 октября 2005 года соответственно) и затем выложенной под заголовком «Что такое Веб 2.0» Web-сайтом «Компьютерра online» [10]. В статье Тим О’Рейли привязал появление большого числа сайтов, объединенных некоторыми общими принципами, с общей тенденцией развития интернет-сообщества, и назвал это явление Web 2.0., в противовес существующему Web 1.0. Несмотря на то, что значение этого термина до сих пор является предметом многочисленных споров, те исследователи, которые признают существование Web 2.0, выделяют несколько основных аспектов этого явления.
Рассмотрим следующие основные принципы Web 2.0 [4]:
1. AJAX – Asynchronous JavaScript and XML — подход к построению пользовательских интерфейсов Web-приложений, при котором Web-страница, не перезагружаясь, асинхронно загружает нужные пользователю данные.
AJAX базируется на двух основных принципах:
использование DHTML для динамического изменения содержания страницы;
использование технологии динамического обращения к серверу «на лету», без перезагрузки всей страницы полностью, например:
с использованием XMLHttpRequest;
через динамическое создание дочерних фреймов;
через динамическое создание тега .
Применение этих двух принципов позволяет создавать намного более удобные Web-интерфейсы пользователя на тех страницах сайтов, где необходимо активное взаимодействие с пользователем.
Использование Ajax стало наиболее популярно после того как Google начала активно внедрять его при создании своих сайтов, таких как Gmail и Google Maps, что подтвердило эффективность данного подхода [6].
2. Синдикация контента – одновременная публикация одного и того же материала на различных страницах или Web-сайтах. Для этого используются Web-потоки, также называемые RSS-потоками (Really Simple Syndication), содержащие заголовки материалов и ссылки на них (например, последние сообщения форумов, и т. п.). Первоначально эта технология использовалась на новостных ресурсах и в блогах, но постепенно сфера применения расширилась.
Обычно с помощью RSS даётся краткое описание новой информации, появившейся на сайте, и ссылка на её полную версию. Интернет-ресурс в формате RSS называется RSS-каналом, RSS-лентой.
Многие современные браузеры и почтовые клиенты умеют работать с RSS-лентами, среди них Safari, Maxthon, Mozilla Firefox, Mozilla Thunderbird, Opera, Microsoft Internet Explorer (начиная с 7-й версии). Кроме того, существуют специализированные приложения (RSS-агрегаторы), собирающие и обрабатывающие информацию RSS-каналов. Также очень популярны Web-агрегаторы, представляющие собой сайты по сбору и отображению RSS-каналов, такие как Яндекс.Лента, Google Reader и Bloglines [6].
3. Метки (теги) – ключевые слова, описывающие рассматриваемый объект, либо относящие его к какой-либо категории. Метки, присваиваются объекту, чтобы определить его место среди других объектов. С понятием меток тесно связано понятие фолксономии — термина, о котором широко заговорили именно в связи с ростом сервисов Web 2.0, таких как Flickr, del.icio.us, и, в дальнейшем, Wink.
Также важным принципом Web 2.0 является "перманентная бета-версия" – радикальное изменение жизненного цикла ПО – вместо нерегулярных и нечастых обновлений установленной у пользователя программы, программная составляющая Web 2.0-ресурсов постоянно находится в развитии. Разработчики пристально следят за реакцией пользователей на нововведения, чтобы оперативно приводить ресурс в соответствие с запросами аудитории [9].
Перечисленные принципы Web 2.0 выполняются на Web-сервере онтологий. Технология Ajax позволяет создавать динамическое и насыщенное содержимое. Основная нагрузка по обработке динамических элементов ложится на браузер пользователя, а обмен данными между сервером и компьютером пользователя минимизирован. Этот подход упрощает использование динамических ресурсов – пользователю не нужно перезагружать страницу, чтобы увидеть результаты своих действий. Использование AJAX также снижает объём трафика, так как клиент и сервер обмениваются небольшими запросами вместо генерирования всей страницы заново, как в случае использования CGI и PHP.
На сервере онтологий RSS используется для создания новостных лент. В свою очередь, блоги сами генерируют RSS-потоки.
Ключевые слова позволяют относить понятия к различным категориям, облегчают поиск содержимого, увеличивают скорость операций поиска, сортировки, классификации.
Выделяют следующие области применения Web 2.0:
Онлайн-дневники или блоги – один из ярких примеров использования принципов Web 2.0. Блоги - регулярно добавляемые записи, изображения или мультимедиа. По авторскому составу блоги могут быть личными, групповыми или общественными (открытыми). По содержанию — тематическими или общими. Для блогов характерна возможность публикации отзывов (комментариев) посетителями. Это делает блоги средой сетевого общения, имеющей ряд преимуществ перед электронной почтой, новостными группами, веб-форумами [10].
Википедия – это многоязычная, общедоступная, свободно распространяемая энциклопедия, издаваемая в Интернете. Создаётся на многих языках мира коллективным трудом добровольных авторов, использующих технологию Wiki. У Википедии нет оплачиваемых редакторов, весь материал безвозмездно добавляется и обновляется участниками. Википедия — это ещё и среда обсуждения всевозможных тем и споров. Возникающие среди авторов неясности и разногласия обсуждаются на специально отведённых для этого страницах. У каждой статьи энциклопедии есть страница её обсуждения. Здесь каждый может присоединиться к беседе и высказать свою точку зрения по поводу представленных в статье материалов [12].
По своим функциям Web-сервер онтологий сильно приближен к Википедии. В то время как Википедия использует технологию Wiki, Web-сервер онтологий использует систему управления содержимым Drupal, позволяющую добиться аналогичных результатов, а именно:
многократно править текст без применения соответствующего ПО на стороне редактора;
Проявлять изменения сразу после их внесения;
Разделять содержимого на именованные страницы;
Вести учёта изменений (учёт версий) понятий – сравнивать редакции и восстанавливать ранние версии.
Как и в Википедии содержимое Web-сервера онтологий формируется пользователями, наделенными соответствующими правами. Широко развита система комментариев и обсуждений опубликованного материала.
Web-сервер онтологий также использует онлайн-дневники, в которых каждый зарегистрированный пользователь может сообщать о своих разработках.
Таким образом, технология Web 2.0 обеспечивает активную сопричастность пользователей к деятельности Web-сервера онтологий. Мнение пользователей и их опыт также учитывается в процессе развития сервера. Использование характерных технологий динамического отображения содержимого делает степень участия пользователя выше, чем раньше. Всё это делает Web 2.0 ресурсы более интерактивными, по сравнению с привычными ресурсами, не дающими пользователям такой свободы самовыражения.
Для реализации Web-сервера онтологий в стиле Web 2.0 необходимо выбрать соответствующие средства, удовлетворяющие основным принципам данной технологии. Далее в дипломной работе будут рассмотрены существующие системы управления содержимым, проведен сравнительный анализ, результатом которого станет выбор наиболее подходящих средств реализации Web-сервера онтологий.