Журнал «Компьютерра» №38
Журнал «Компьютерра» №38 читать книгу онлайн
Внимание! Книга может содержать контент только для совершеннолетних. Для несовершеннолетних чтение данного контента СТРОГО ЗАПРЕЩЕНО! Если в книге присутствует наличие пропаганды ЛГБТ и другого, запрещенного контента - просьба написать на почту [email protected] для удаления материала
Конечно, так можно охарактеризовать практически все веб-приложения. В конце концов, простейшее приложение требует для своей работы по крайней мере два компьютера: один - для хостинга сервера, второй - для браузера. И как мы уже обсуждали, развитие веба как платформы расширяет эту идею до синтетических приложений, составленных из сервисов, которые предоставляются множеством компьютеров.
Но - с Вебом 2.0 такое случается частенько - «2.0» означает не что-то совершенно новое, а развитие и углубление существующих концепций. И фраза Стаца поясняет, как нужно проектировать приложения для новой платформы.
В настоящий момент лучшим примером нового подхода является iTunes. Это приложение без проблем соединяет карманное устройство с грандиозной веб-базой, оставляя ПК роль локального кэш-сервера и контрольной станции. Попытки донести веб-контент до мобильных устройств, разумеется, предпринимались и раньше, но связка iPod/iTunes является одним из первых приложений, соединяющих в единую цепочку сразу несколько устройств. Другой хороший пример подобного подхода - TiVo.
iTunes и TiVo также демонстрируют другие ключевые принципы Веба 2.0. Они не являются веб-приложениями сами по себе, однако используют мощь веб-платформы, превращая веб в незаметную, практически невидимую часть своей инфраструктуры. TiVo и iTunes - сервисы, а не коробочные приложения (хотя в случае с iTunes это не совсем верно - программа вполне может использоваться и как коробочный софт, для управления пользовательскими данными). Более того, и TiVo, и iTunes пытаются использовать коллективный разум, хотя в обоих случаях эти эксперименты натыкаются на сопротивление со стороны ИС-лобби[ИС - здесь: интеллектуальная собственность. - Прим. ред.]. В iTunes архитектура взаимодействия пользователей довольно ограничена, хотя последние нововведения в области поддержки подкастинга несколько изменили положение дел в лучшую сторону.
Все это одна из областей Веба 2.0, в которой мы ожидаем тем больших изменений, чем больше устройств подключено. Какие приложения появятся, когда все наши телефоны и автомобили будут не только потребителями информации, но и ее поставщиками? Мониторинг пробок в реальном времени, флэш-мобы, любительская журналистика - вот только несколько первых ласточек, намекающих нам на возможности новой платформы.
Еще со времен браузера Viola (1992) у всех на устах слово «апплеты» и прочие способы доставки активного контента через браузер. Появление в 1995 году Java тоже сопровождалось упоминанием апплетов. JavaScript - а затем и DHTML - были представлены публике как простые пути для выполнения приложений на стороне клиента и обогащения пользовательских интерфейсов. Несколько лет спустя Macromedia использовала термин Rich Internet Applications (впрочем, им не гнушалась и Laszlo Systems - разработчик флэш-решений в открытых исходниках), чтобы подчеркнуть возможности Flash не только в области доставки мультимедиа-контента, но и как основы для построения GUI-интерфейсов.
Однако потенциал веба для постройки полномасштабных приложений не принимали всерьез до появления Gmail, за которым последовал Google Maps. В обоих случаях веб-приложения предлагали богатые пользовательские интерфейсы и почти неотличимую от ПК-приложений интерактивность. В одном из своих эссе Джесс Джеймс Гаррет из веб-студии Adaptive Path «окрестил» использованные для этой цели технологии AJAX. Он писал:
Сам AJAX не является технологией. Это несколько вполне самостоятельных технологий, работающих вместе. AJAX включает в себя:
обработку стандартов XHTML и CSS;
динамическое отображение и интерактивное использование DOM (Document Object Model);
взаимный обмен и управление данными посредством XML и XSLT;
асинхронное извлечение данных с помощью XMLHttpRequest;
и JavaScript, объединяющий все это вместе.
AJAX также является ключевым компонентом таких приложений, как Flickr, приложений от 37signals, Gmail и Orkut (Google). Мы вступаем в беспрецедентный период нововведений в пользовательских интерфейсах, раз уж разработчики, наконец, научились создавать веб-приложения, ничем не уступающие в этом аспекте ПК-приложениям.
Интересно, что многие из новых возможностей, на самом деле, не являются новыми. Еще в конце 90-х гг. и Microsoft, и Netscape понимали, что это достижимо, но их битва привела к несовместимости стандартов. И только после того, как Microsoft выиграла «браузерные войны» и у нас де-факто остался один-единственный стандарт браузера, создание таких приложений стало реальным. Firefox, конечно, возродил конкуренцию на рынке браузеров, но пока что мы не видим разрушительной войны стандартов, которая задержала наше развитие в конце XX века.
В ближайшие несколько лет появится множество новых веб-приложений - как абсолютно новых, так и переделок старых ПК-приложений под веб. Любая смена платформы создает новые возможности для захвата лидирующего положения на рынке, даже если этот рынок казался полностью устоявшимся.
Gmail уже продемонстрировал несколько интересных нововведений в области электронной почты, комбинируя сильные стороны веба (доступность из любой точки, нетривиальные возможности работы с данными, возможность поиска) с пользовательскими интерфейсами, сравнимыми по удобству с ПК-интерфейсами. Между тем почтовые клиенты на платформе ПК усовершенствуются в другом направлении, добавляя в свой интерфейс, например, возможности инстант-мессенджера и датчика онлайнового присутствия. Как далеко зайдут интегрированные клиенты, объединяя лучшее, что есть в e-mail, IM и мобильной телефонии (используя VoIP, чтобы добавить голосовые возможности)? Гонка началась.
Легко увидеть, как Веб 2.0 меняет привычные «адресные книги». Адресная книга для Веба 2.0 использует локальную базу контактов на ПК или телефоне для запоминания тех контактов, которые вы специально отметили для сохранения. Между тем Gmail-подобный веб-агент помнит все сообщения, полученные или отосланные, все адреса, все телефоны и на основе эвристики социальных сетей пытается решить, какие именно альтернативы вам предложить, когда в локальной базе нужного контакта нет. При отсутствии нужного ответа система может задействовать социальную сеть большего масштаба.