AJAX - локомотив развития Web-приложений

28.02.06

Еще недавно казалось, что web-приложения никогда не смогут догнать традиционное ПО по насыщенности функционала, интерфейса и производительности. Однако сейчас, похоже, наступил тот момент, когда этот разрыв будет преодолен с помощью технологии AJAX (Asynchronous JavaScript + XML). Сейчас нельзя не заметить растущий интерес к нему со стороны ведущих поставщиков средств разработки и прогнозировать перспективу традиционной для современного ИТ-мира борьбы вокруг стандартов для этой технологии. AJAX не содержит каких-то принципиально новых средств, ее главное новшество - увязка воедино хорошо известных технологий: XML и JavaScript.

Классическая модель построения Web-приложения выглядит следующим образом. Пользователь выполняет какие-то действия на клиентской машине, в результате на Web-сервер отправляется HTTP-запрос. Сервер производит нужные операции - получает данные из БД, связывается с другими системами, выполняет некую обработку информации и пр. - и возвращает новую сформированную HTML-страницу на клиентский компьютер. Все это работает в рамках традиционной модели гипертекстовой Web-среды, но такая схема не всегда хороша для создания прикладных программных решений. Фактически пользователь лишен возможности выполнять какие-либо действия во время обращения к серверу, при том что интерфейс уже загружен.

Главная идея AJAX - исключить старт-стопный режим взаимодействия в Web с помощью введения специального промежуточного слоя - механизма AJAX (рис. 1). Вместо Web-страницы браузер загружает написанный на JavaScript специальный движок AJAX, который отвечает как за перерисовку внешнего визуального интерфейса, так и за связь с сервером. Такой промежуточный слой позволяет управлять взаимодействием с пользователем асинхронно, независимо от обмена данными с сервером (рис. 2). Теперь каждое действие человека вместо отправки HTTP-запроса на сервер формирует JavaScript-вызов к AJAX-движку, который сам управляет интерфейсными операциями, не требующими обращения к серверу.

Рис. 1. Традиционная и AJAX-модели для создания Web-приложений

Решающая роль в реализации такой логики работы принадлежит объекту XMLHttpRequest, который позволяет на JavaScript выполнять HTTP-запросы к удаленному серверу без перезагрузки HTML-страниц. Впервые этот объект был предложен корпорацией Microsoft в виде ActiveX-компонента, но сейчас он уже выполнен на уровне внутреннего объекта в наиболее популярных браузерах (в том числе Mozilla и Apple Safari).

Рис. 2. Модель работы традиционного (сверху) и AJAX Web-приложений

Комментарии
Зарегистрируйтесь, чтобы комментировать. Или войдите

16 Марта 2012, Москва
Конференция Cloud & Mobility 2012


Новости сети LiveBusiness


Live Enterprise | Реклама | Присылайте новости на authors@livebusiness.ru