Чтение онлайн

на главную

Жанры

Журнал «Компьютерра» №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 привел весьма остроумный контраргумент: «Вы никогда не увидите картинок, если отключите их в своем браузере… Ваш компьютер перестанет работать, если вы выдернете вилку из розетки… На свете и так слишком много вещей, которые можно отключить».

Подобные утверждения не убеждают противников «нового веба». Ведь есть же последняя и самая страшная заповедь, которую нарушает этот подход, - юзабилити.

В AJAX-приложениях не работает знакомая каждому кнопка «Back». С точки зрения программиста, такой саботаж вполне объясним: браузер хранит историю перемещения пользователя по страницам, а в AJAX контроль отдается в руки приложения, где нет понятия отдельных страниц, - и «цепь времен» разорвана. Пользователь же убежден, что любимая кнопка должна работать всегда и везде. Приходится выдумывать дополнительные трюки, которые имитируют правильную работу злосчастной кнопки в AJAX.

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

Дефицит идей и избыток технологий

Похоже, что хитренький автор из Adaptive Path, чья статья была многократно растиражирована в Сети, оказался не так уж неправ. Конечно, наивно называть «новым вебом» подход, технологическую начинку для которого придумали в незапамятные времена. Да, технологии известны давно, и их комбинация, отдаленно напоминающая AJAX, была впервые использована Microsoft аж семь лет назад.

Как ни странно, призрак AJAX довольно давно тревожит умы и отечественных программистов. В России этот подход, пожалуй, даже нашел новые сферы применения. Например, родственная комбинация технологий под названием LCD (Live Client Documents)[Разрабатывается компанией BYTE-force с 2000 года] легла в основу системы управления контентом. Здесь отсутствуют асинхронные запросы к серверу, то есть «чудеса» можно наблюдать, даже отключившись от Интернета, связь потребуется лишь для сохранения изменений. Однако об удобных приложениях с быстрыми интерфейсами, оперативно реагирующими на каждый «чих» пользователя, заговорили лишь в этом году. Бесспорно, немалую роль в этом сыграл Google: разработчики подхватили старую идею и придумали ей новое применение.

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

Ажиотаж вокруг «нового веба» великолепно иллюстрирует и другую, немного грустную закономерность. Пока не найдется талантливый популяризатор, или, если угодно, «пиарщик», самой гениальной технологии уготовано место на задворках компьютерного мира. AJAX повезло, и будем надеяться, что и для других хороших идей будут находится не менее хорошие популяризаторы.

Поделиться:
Популярные книги

Внебрачный сын Миллиардера

Громова Арина
Любовные романы:
современные любовные романы
короткие любовные романы
5.00
рейтинг книги
Внебрачный сын Миллиардера

Вечная Война. Книга VII

Винокуров Юрий
7. Вечная Война
Фантастика:
юмористическая фантастика
космическая фантастика
5.75
рейтинг книги
Вечная Война. Книга VII

Калибр Личности 1

Голд Джон
1. Калибр Личности
Фантастика:
попаданцы
альтернативная история
аниме
5.00
рейтинг книги
Калибр Личности 1

Усадьба леди Анны

Ром Полина
Любовные романы:
любовно-фантастические романы
5.00
рейтинг книги
Усадьба леди Анны

Отмороженный 3.0

Гарцевич Евгений Александрович
3. Отмороженный
Фантастика:
боевая фантастика
рпг
5.00
рейтинг книги
Отмороженный 3.0

Довлатов. Сонный лекарь 3

Голд Джон
3. Не вывожу
Фантастика:
попаданцы
аниме
5.00
рейтинг книги
Довлатов. Сонный лекарь 3

Мама из другого мира. Дела семейные и не только

Рыжая Ехидна
4. Королевский приют имени графа Тадеуса Оберона
Любовные романы:
любовно-фантастические романы
9.34
рейтинг книги
Мама из другого мира. Дела семейные и не только

Болотник

Панченко Андрей Алексеевич
1. Болотник
Фантастика:
попаданцы
альтернативная история
6.50
рейтинг книги
Болотник

Дочь моего друга

Тоцка Тала
2. Айдаровы
Любовные романы:
современные любовные романы
эро литература
5.00
рейтинг книги
Дочь моего друга

Назад в ссср 6

Дамиров Рафаэль
6. Курсант
Фантастика:
попаданцы
альтернативная история
6.00
рейтинг книги
Назад в ссср 6

Лучший из худших

Дашко Дмитрий
1. Лучший из худших
Фантастика:
фэнтези
попаданцы
5.25
рейтинг книги
Лучший из худших

Ротмистр Гордеев 2

Дашко Дмитрий
2. Ротмистр Гордеев
Фантастика:
попаданцы
альтернативная история
5.00
рейтинг книги
Ротмистр Гордеев 2

Флеш Рояль

Тоцка Тала
Детективы:
триллеры
7.11
рейтинг книги
Флеш Рояль

Темный Патриарх Светлого Рода 7

Лисицин Евгений
7. Темный Патриарх Светлого Рода
Фантастика:
фэнтези
попаданцы
аниме
5.00
рейтинг книги
Темный Патриарх Светлого Рода 7