Читаем Журнал «Компьютерра» №32 от 06 сентября 2005 года полностью

Понять преимущества альтернативного подхода сможет лишь тот, кто знает о недостатках традиционного.

Что происходит в недрах обычного динамического сайта? Стоит пользователю, например, кликнуть по ссылке или выбрать какую-нибудь опцию из выпадающего меню, как исполнительный браузер немедленно отправит полученную информацию на сервер. Неприученный к самостоятельной работе, браузер предоставляет другим решать все важные вопросы. Серверу необходимо разобрать поступившие данные, понять их и правильно отреагировать. В результате браузер будет удостоен ответа в виде новой полной веб-страницы. Да и сервер не всесилен, поэтому, если его начинают засыпать вопросами со всех сторон, он вполне может взять тайм-аут.

А как же главное действующее лицо - пользователь? Ему остается покорно ждать, пока браузер с сервером решают свои проблемы и грузят для него новую страницу. Время ожидания складывается из «сообразительности» сервера и скорости интернет-соединения.

Неужто AJAX способен избавить веб-интерфейсы от извечной заторможенности? Что ж, популярные Google-сервисы показали, что приложения в Сети способны работать гораздо проворнее, чем привыкли ожидать терпеливые пользователи.

Вернемся к технической начинке «нового веба». Браузер получает в свое распоряжение XML-файл. Далее на арену выходят еще два игрока - JavaScript и XMLHttpRequest. Первый из них выступает в роли распорядителя, а второй отвечает за получение информации с сервера.

XMLHttpRequest играет немалую роль в рождении «чуда». Именно он позволяет тихонько отправлять асинхронные запросы серверу через протокол HTTP и столь же незаметно получать всю необходимую информацию в виде XML[Строго говоря, могут использоваться и другие форматы - например, plaintext].

Скажем, вы пытаетесь ввести какое-то слово в окошко поиска на Google Suggest. С помощью XMLHttpRequest браузер отправляет запрос на сервер и ожидает ответа. Сервер присылает необходимые данные в виде XML. Расторопный JavaScript разбирает полученные данные и заботливо заворачивает их в HTML-теги. Момент… и ниже окна поиска отобразилось несколько полезных «подсказок».

Можно использовать и более изящное решение, если привлечь «запасного игрока» - XSL. Получив в свое распоряжение XML-файл и XSL-шаблон, современный браузер способен сгенерировать правильную HTML-страницу. Таким образом, в его «голове» оказываются сами данные, их структура и внешний вид для пользователя. «Поумневшая» программа - настоящая находка для JavaScript’а, которому по долгу службы в AJAX приходиться управлять информацией. Скрипту доступен XML-образ веб-страницы, который заботливо хранит в своей памяти браузер, поэтому манипулирование данными не составляет для него особого труда.

Ловкая комбинация технологий - и никакого мошенничества. Короче говоря, часть функций сервера по сборке итоговой страницы из данных и таблиц переходит к браузеру, вооруженному JavaScript’ом.


«Компьютерные шрифты» от портала Gets.Ru (fonts.gets.ru). Несколько тысяч шрифтов удобно разбиты по категориям: «3d-шрифты», «Компьютерные», «Декоративные», «Плакатные», «Символьные» и др. Есть шрифты русских разработчиков, есть и англоязычных.

«Шрифты на Woweb» (font.woweb.ru) - еще один ресурс по этой теме. Многие шрифты, конечно, вы уже могли найти на Fonts.Gets.Ru, но достаточно и тех, которые добавлены специально для Font.Woweb.Ru. Именно тут можно найти оригинальные шрифты, подходящие для создания логотипа или другой графической работы.


Немного о грустном


Преимущества AJAX очевидны - сэкономленное время и трафик, ожившие интерфейсы, счастливые пользователи. Но столь же очевидны и недостатки.

AJAX не может похвастать универсальностью. Используя этот подход, программистам приходится изворачиваться, чтобы порадовать поклонников различных браузеров. Конечно, эти технологии поддерживаются всеми заслуживающими внимания программами - Mozilla Firefox, Microsoft Internet Explorer, Opera, Konqueror и Apple Safari. Однако отдельные компоненты могут вести себя непредсказуемо в браузерах различных производителей. Как всегда, именно «мелкая несовместимость» способна омрачить радость приобщения к «новому вебу», поэтому приложения приходится дотошно тестировать. К счастью, разработчики объединили усилия, и теперь в Сети можно найти библиотеки, решающие проблемы с совместимостью.

Самое досадное ограничение - JavaScript в браузере обязательно должен быть включенным. А контроль за этим целиком и полностью находится в руках пользователя. Особо мнительные субъекты, «продвинутые» в вопросах безопасности, имеют привычку отключать все «лишние» возможности. И такой «спартанский» браузер, разумеется, не сможет порадовать своего владельца чудесами «нового веба». С другой стороны, один из горячих поклонников AJAX привел весьма остроумный контраргумент: «Вы никогда не увидите картинок, если отключите их в своем браузере… Ваш компьютер перестанет работать, если вы выдернете вилку из розетки… На свете и так слишком много вещей, которые можно отключить».

Перейти на страницу:

Все книги серии Компьютерра

Похожие книги

«Если», 2002 № 06
«Если», 2002 № 06

ФАНТАСТИКАЕжемесячный журналСодержание:Джеймс Блиш. БИ-И-ИП! рассказВл. Гаков. МИССИОНЕР (статья)Джин Вулф. ПОДМЕНЫШ, рассказШон Макмаллен. БАШНЯ КРЫЛЬЕВ, рассказМэри Терзиллоу. ДЕСЯТАЯ ЖИЗНЬ НЕФЕРТИТИ, рассказВидеодром*Рейтинг--- Дмитрий Байкалов. ЭЛОИ ПРОТИВ МОРЛОКОВ (статья)*Премьера--- Тимофей Озеров. УДАР ПО КАРМАНУ (статья)*Рецензии*Экранизация--- Вл. Гаков. ЧУЖАК В СВОЕЙ СТРАНЕ (статья)Алексей Калугин. РАССВЕТ ПОТЕРЯННЫХ ДУШ, рассказРаджнар Ваджра. ДЖЕЙК, Я И ЗИППО, рассказСвятослав Логинов. ДОЛИНА ЛОРИЭН, рассказ,Алексей Зарубин. КРАСОТА ОПЛАЧЕННОГО ДОЛГА, повестьКэрол Карр. И ВАМ ЕЩЕ КАЖЕТСЯ, ЧТО У ВАС НЕПРИЯТНОСТИ? рассказДмитрий Володихин. КАРАУЛ УСТАЛ (статья)Сергей Питиримов. МОРЕ ВОЛНУЕТСЯ РАЗ… (статья)РецензииОлег Дивов. БЕЛЫЙ КВАДРАТ НА ЧЕРНОМ ФОНЕ (статья), стр. 280-291Владислав Гончаров. ДО АПОКАЛИПСИСА ЕЩЕ ПОЖИВЕМ! (статья)Виталий Пищенко: «ПРИЯТНО НАЙТИ ПРОРОКА В СВОЕМ ОТЕЧЕСТВЕ»КурсорPersonaliaОбложка Игоря Тарачкова к повести Алексея Зарубина «Красота оплаченного долга».Иллюстрации: А. Балдин, В. Овчинников, А. Филиппов, Т. Филиппова, С. Голосов, С. Шехов, И. Тарачков.

Алексей Зарубин , Виталий Пищенко , Кэрол Карр , Раджнар Ваджра , Сергей Питиримов

Фантастика / Журналы, газеты / Фэнтези / Современная проза / Эссе