В статье Гарретта упоминается ряд технологий, которые, на его взгляд,
являются частями решения Ajax. Вот они:
• HTML/XHTML. Первичные языки представления содержимого.
• CSS. Обеспечивает стилистическое форматирование в XHTML.
• DOM. Отвечает за динамическое обновление загруженной страницы.
• XML. Формат обмена данными.
• XSLT. Преобразует документы XML в XHTML (отформатированный
с помощью CSS).
• XMLHttp. Первоочередное средство взаимодействия.
• JavaScript. Язык сценариев, применяемый для создания механизма
Ajax.
Все эти технологии могут использоваться в решениях на базе Ajax,
но обязательны только три из них: HTML/XHTML, DOM и JavaScript.
Вполне очевидно, что XHTML нужен для отображения информации,
DOM - для изменения отдельных частей страницы без полной ее перезагрузки.
Последняя часть - JavaScript - необходима для организации
взаимодействий между клиентом и сервером и манипулирования
элементами DOM с целью обновления веб-страницы. Другие технологии,
перечисленные в списке, удобны для точной подгонки решений
на базе Ajax, но не являются необходимыми.
Существует еще один важный компонент, о котором Гарретт забыл
упомянуть в своей статье: необходимость выполнения операций на стороне
сервера. Все перечисленные выше технологии непосредственно связаны с механизмом Ajax, работающим только на стороне клиента,
но применение технологии Ajax невозможно без сервера, способного
обслуживать запросы Ajax. Для этих целей годится любой сервер приложений.
Не имеет никакого значения, как будут оформлены компоненты
на стороне сервера - будут ли это страницы РНР, сервлеты Java
или компоненты .NET, - главное, чтобы они возвращали механизму
Ajax данные в требуемом формате.