Термин Web 2.0 используется для обозначения новых тенденций в использовании технологий WWW, направленных на расширение творческих возможностей пользователей, более безопасный обмен информацией и взаимодействие между ними.
При этом больший акцент делается на формирование веб-сообществ и социально-ориентированных сайтов таких как, например, блоги и видеоблоги, фолксономии, википедии и др.
Термин получил распространение после конференции по Web 2.0 Медиа в 2004 году с подачи Тима О'Рейли для выражения нового способа взаимодействия разработчиков ПО и конечных пользователей через Веб. Ключевой принцип идеологии Web 2.0 был сформулирован как: "Интернет - как платформа".
Правомерность термина оспаривают многие эксперты, в том числе Тим Бернерс-Ли, поскольку многие компоненты технологий Web 2.0 существовали еще с первых лет существования сети Веб.
Web 2.0 можно рассматривать и как подход к построению систем, при котором они становятся тем лучше, чем больше людей ими пользуются в процессе сетевых взаимодействий.
Фактически Web 2.0 означает переход веб-сайтов от изолированных накопителей информации к взаимосвязанным программным платформам, воспринимаемым пользователями так как будто они испольняются локально на его компьютере.
Сайты Web 2.0 предоставляют для пользователей возможность:
Еще одна важная концепция Web 2.0 - "Архитектура участия", которая поощряет пользователей повышать ценность ПО, путем его использования.
В качестве ключевых для Web 2.0 рассматриваются следующие технологии:
К недостаткам Web 2.0 можно отнести следующие:
Мэшап ( Mashup ) - гибридное веб-приложение, объединяющее данные из нескольких источников в рамках единого интегрированного инструмента. Контент мэшап обычно получает извне с помощью открытых интерфейсов, веб-сервисов, веб-источников (например RSS или Atom ) или анализа документов, генерируемых другими программами.
Наиболее часто мэшапы используют программные интерфейсы представляемые Аmazon, eBay, Flickr, Google, Microsoft, Yahoo и YouTube.
Архитектура мэшап включает в себя 3 части:
Различные типы мэшапов могут генерировать RSS, веб-сервисы, мгновенные и почтовые сообщения.
Следует отличать мэшапы от простого внедрения данных с других сайтов с образованием сложных документов. Мэшап самостоятельно получает внешние данные через программные интерфейсы и, обрабатывая их определенным образом, придает им дополнительную ценность.
В качестве примера можно привести использование картографических данных Google Maps для добавления к ним данных о недвижимости в Cragislist (в результате создается новый уникальный веб-сервис, изначально не предлагаемый ни одним из источников).
Среди мэшапов можно выделить следующие группы:
Хотя мэшапы также как и порталы являются технологиями аггрегирования контента, имеется принципиальное отличие между ними. Порталы - более ранняя технология, являющаяся, по-сути, расширением традиционных динамических веб-приложений, в которых процесс преобразования данных в гипертекстовые документы разбивается на два этапа: генерация отдельных частей разметки и объединение их на одной странице. За генерацию каждой из частей отвечает соответствующие портальные приложения, исполняемые на портальном сервере или другом сервере. Портальная технология является серверной технологией, отвечающей за агрегирование данных только на уровне представления.
Компания Microsoft предоставляет пользователям специальный сайт Microsoft Popfly, который позволяет пользователям создавать веб-страницы, фрагменты программного кода (для повторного использования) и мэшапы с помощью пакета разработки приложений с поддержкой Microsoft Silverlight.
На сайте имеются четыре инструменты, основанные на Microsoft Silverlight:
Понятие " Социальный Веб " ( Social Web ) используется для описания того, как происходит социализация пользователей и их взаимодействие друг с другом с помощью сети WWW. Основой для объединения пользователей служат самые разнообразные общие интересы.
Термин " Социальный Веб " может быть использован для выражения двух понятий.
Можно рассматривать как сообщество множество людей, связанных и взаимодействующих между собой посредством контента в режиме диалога и совместных действий через Интернет.
Будучи нацеленными на стимулирование взаимодействия между людьми, социальное ПО для Веб оперирует со следующими социальными атрибутами:
Социальное программное обеспечение - это широкий диапазон программных систем, позволяющмх пользователям взаимодействовать и обмениваться данными. Этот способ компьютерно-опосредованного взаимодействия стал популярным с появлением таких социальных сайтов как MySpace, Facebook, Одноклассники, ВКонтакте.ru, медиа сайтов Flickr и YouTube, коммерческих сайтов eBay.
Многие из этих приложений имеют такие общие характеристики как: открытые API, сервис-ориентированный дизайн, возможность удаленного размещения данных и медиа-файлов. Такие приложения принято относить к системам Веб 2.0.
Внутри социального ПО можно выделить две группы программных инструментов: коммуникационные и интерактивные.
Можно назвать следующие примеры программных систем, которые относится к социальному ПО:
Фолксономия ( folksonomy ) - практика и методика совместной категоризации контента (ссылок, фото, видео клипов и т.п.) посредством произвольно выбираемых меток (тегов). Она основана на спонтанном сотрудничестве группы людей с целью организации контента и полностью отличается от традиционных формальных методов классификации на основе индексных терминов. Как правило, этот феномен возникает только в неиерархических сообществах, например на общедоступных веб-сайтах. Так как участники фолксономии контента обычно являются и основными же ее потребителями, использование методики фолксономии приводит к результатам, более точно отражающим совместную концептуальную модель контента всей группы.
Основными проблемами фолксономии, приводящими к ненадежности и несогласованности результатов, являются:
Фолксономию можно рассматривать в качестве одного из ключевых элементов в развитии Семантической веб-сети, в рамках которой все веб-страницы содержат машинно-ориентированные метаданные, описывающие содержимое страниц. Эти метаданные должны значительно улучшать точность работы поисковых систем. Однако во избежание трудностей, вызванных ненадежностью и несогласованностью в работе больших сообществ авторов страниц, им рекомендуется использовать стандарты метаданных, например Дублинское ядро ( Dublin Core ).
Семантическая веб-сеть ( Semantic Web ) - часть глобальной концепции развития сети Интернет, целью которой является реализация возможности машинной обработки информации, доступной в сети WWW. Основной акцент в этой концепции делается на работе с метаданными, однозначно характеризующими свойства и содержание ресурсов WWW, вместо используемого в настоящее время текстового анализа документов.
Термин был введен Тимом Бернерсом-Ли в мае 2001 года.
В семантической веб-сети предполагается повсеместное использование
Концепция семантической веб-сети была принята и продвигается W3С. Для её внедрения предполагается создание сети документов, содержащих метаданные о ресурсах WWW, и существующей параллельно с ними. Тогда как сами ресурсы предназначены для восприятия человеком, метаданные используются машинами (поисковыми роботами и другими интеллектуальными агентами) для получения однозначной информации о свойствах этих ресурсов с помощью механизмов логического вывода.
Техническую часть семантической паутины составляет семейство стандартов на языки описания, включающее XML, XML Schema, RDF, RDF Schema, OWL и др. Необходимость описания метаданных так или иначе приводит к дублированию информации. Каждый документ должен быть создан в двух экземплярах: размеченным для чтения людьми, а также в машинно-ориентированном формате.
Онтология - это попытка всеобъемлющей и детальной формализации некоторой области знаний с помощью концептуальной схемы. Обычно такая схема состоит из иерархической структуры данных, содержащей все релевантные классы объектов, их связи и правила (теоремы, ограничения), принятые в этой области.
Современные онтологии обычно состоят из экземпляров, понятий, атрибутов и отношений.
Для описания онтологий Веб был разработан специальный язык - OWL (Web Ontology Language) , построенный на основе XML. Язык OWL может быть использован для описания классов и отношений между ними. В основе языка - представление действительности в модели данных "объект - свойство". Язык применим не только для описания веб-страниц, но и любых объектов действительности и рассматривается в качестве одной из фундаментальных технологий, необходимых для построения Семантической веб-сети.
В то время как совокупность ресурсов и их метаданных можно считать статической частью семантической паутины, её динамическую часть представляют семантические веб-сервисы - законченные элементы программной логики с однозначно описанной семантикой, доступные через Веб и пригодные для поиска, композиции и выполнения.
Технически, семантический веб-сервис отличается от обычного веб-сервиса наличием не только описания интерфейса (обычно на языке WSDL ) в терминах типов данных, передаваемых сервису, возвращаемых значений и генерируемых ошибок, но и наличием семантического описания всех его характеристик.
Потенциальная выгода от использования семантических веб-сервисов заключается в возможности автоматического поиска (а также композиции) программными агентами подходящих сервисов для решения поставленных задач.
Тем не менее, сложность этой задачи в её общей формулировке пока позволяет добиваться некоторых положительных результатов только в узкоспециализированных отраслях, явным образом выигрывающих от внедрения сервисно-ориентированной архитектуры, например в интеграции корпоративных приложений.