- В продаже
- ожидают 26 человек
- На аукционах Ay.by
- ожидает 1 человек
- Книги издательства
- ожидают 59 человек
AJAX в действии: технология - Asynchronous JavaScript and XML
На данный момент товар отсутствует в продаже
В книге "Ajax в действии" описана новая технология создания вебразработок с конкретными примерами разработки веб-приложений, получившая имя AJAX (Asynchronous JavaScript and XML). В книге рассмотрены составные части AJAX : JavaScript, CSS, DOM и объект XMLHttpRequest. Авторы книги - Дейв Крейн, Эрик Паскарелло и Даррен Джеймс - рассматривают недостатки классических web-приложений, предназначенных для работы в сети, и показывают, как можно устранить их, с помощью асинхронных запросов и передачи части функций от сервера к клиенту. Передача функциональных возможностей от сервера к клиенту приводит к существенному возрастанию объема и сложности клиентского кода, написанного на языке JavaScript. Управление кодом web-приложения — сложная задача, поэтому авторы уделяют внимание образам разработки (см. обсуждение термина design patterns ... ) и реструктуризации кода. Правильное применение этих средств позволяет обеспечить поддержку приложения и возможность повторного использования его компонентов. Большое внимание уделено также вопросам взаимодействия клиента и сервера, а также применению архитектуры "модель–представление–контроллер" на разных уровнях приложения. Читатель также найдет сведения о защите и производительности — важных характеристиках, существенно влияющих на популярность любого продукта среди пользователей. В последней части книги приведены примеры практического использования технологии Ajax: расширение возможностей HTML-форм, организация опережающего ввода, реализация "живого" поиска с использованием XSL и поддержка RSS.
В книге "Ajax в действии" описана новая технология создания вебразработок с конкретными примерами разработки веб-приложений, получившая имя AJAX (Asynchronous JavaScript and XML). В книге рассмотрены составные части AJAX : JavaScript, CSS, DOM и объект XMLHttpRequest. Авторы книги - Дейв Крейн, Эрик Паскарелло и Даррен Джеймс - рассматривают недостатки классических web-приложений, предназначенных для работы в сети, и показывают, как можно устранить их, с помощью асинхронных запросов и передачи части функций от сервера к клиенту. Передача функциональных возможностей от сервера к клиенту приводит к существенному возрастанию объема и сложности клиентского кода, написанного на языке JavaScript. Управление кодом web-приложения — сложная задача, поэтому авторы уделяют внимание образам разработки (см. обсуждение термина design patterns ... ) и реструктуризации кода. Правильное применение этих средств позволяет обеспечить поддержку приложения и возможность повторного использования его компонентов. Большое внимание уделено также вопросам взаимодействия клиента и сервера, а также применению архитектуры "модель–представление–контроллер" на разных уровнях приложения. Читатель также найдет сведения о защите и производительности — важных характеристиках, существенно влияющих на популярность любого продукта среди пользователей. В последней части книги приведены примеры практического использования технологии Ajax: расширение возможностей HTML-форм, организация опережающего ввода, реализация "живого" поиска с использованием XSL и поддержка RSS.
В приложениях содержится дополнительная информация об инструментальных средствах, языке JavaScript и библиотеках. Эта информация поможет программистам в работе над реальными приложениями. Материал книги изложен на высоком уровне и наверняка будет полезен специалистам высокой и средней квалификации.
Содержание
- Введение
- I. НОВЫЙ ВЗГЛЯД НА WEB-ПРИЛОЖЕНИЕ
- 1. Каким должен быть Web-интерфейс
- 1.1. Нужны ли богатые клиенты
- 1.1.1. Действия пользователя при работе с приложением
- 1.1.2. Накладные расходы при работе в сети
- 1.1.3. Асинхронное взаимодействие
- 1.1.4. Независимый и переходный образы использования
- 1.2. Четыре основных принципа Ajax
- 1.2.1. Браузер имеет дело с приложением, а не с содержимым
- 1.2.2. Сервер доставляет данные, а не содержимое
- 1.2.3. Пользователь может непрерывно взаимодействовать с приложением
- 1.2.4. Реальное кодирование требует порядка
- 1.3. Применение богатых клиентов Ajax
- 1.3.1. Системы, созданные с использованием Ajax
- 1.3.2. Google Maps
- 1.4. Альтернативные технологии
- 1.4.1. Macromedia Flash
- 1.4.2. Java Web Start
- 1.5. Резюме
- 1.6. Ресурсы
- 2. Знакомство с Ajax
- 2.1. Основные элементы Ajax
- 2.2. JavaScript изучался не зря
- 2.3. Определение внешнего вида с помощью CSS
- 2.3.1. Селекторы CSS
- 2.3.2. Свойства стилей
- 2.3.3. Простой пример использования CSS
- 2.4. Организация просмотра с помощью DOM
- 2.4.1. Обработка DOM с помощью JavaScript
- 2.4.2. Поиск узла DOM
- 2.4.3. Создание узла DOM
- 2.4.4. Добавление стилей к документу
- 2.4.5. Свойство innerHTML.
- 2.5. Асинхронная загрузка с использованием XML
- 2.5.1. Элементы IFrame
- 2.5.2. Объекты XmlDocument и XMLHttpRequest
- 2.5.3. Передача запроса серверу
- 2.5.4. Использование функции обратного вызова для контроля запроса
- 2.5.5. Жизненный цикл процедуры поддержки запроса
- 2.6. Отличия Ajax от классических технологий
- 2.7. Резюме
- 2.8. Ресурсы
- З. Управление кодом Ajax
- 3.1. Порядок из хаоса
- 3.1.1. Образы разработки
- 3.1.2. Реструктуризация и Ajax
- 3.1.3. Во всем надо знать меру
- 3.1.4. Реструктуризация в действии
- 3.2. Варианты применения реструктуризации
- 3.2.1. Несоответствие браузеров
- 3.5. Библиотеки независимых производителей
- 3.5.1. Библиотеки, обеспечивающие работу с различными браузерами
- 3.5.2. Компоненты и наборы компонентов
- 3.5.3. Элементы, располагаемые на стороне сервера
- 3.6. Резюме
- 3.7. Ресурсы
- II. ОСНОВНЫЕ ПОДХОДЫ К РАЗРАБОТКЕ ПРИЛОЖЕНИЙ
- 4. Web-страница в роли приложения
- 4.1. Разновидности архитектуры MVC
- 4.1.1. Применение архитектуры MVC к программам различных уровней
- 4.1.2. Применение архитектуры MVC к объектам, присутствующим в среде браузера
- 4.2. Представление в составе Ajax-приложения
- 4.2.1. Отделение логики от представления
- 4.2.2. Отделение представления от логики
- 4.3. Контроллер в составе Ajax-приложения
- 4.3.1. Классические JavaScript-обработчики
- 4.3.2. Модель обработки событий W3C
- 4.3.3. Реализация гибкой модели событий в JavaScript
- 4.4. Модель в составе Ajax-приложения
- 4.4.1. Использование JavaScript для моделирования предметной области
- 4.4.2. Взаимодействие с сервером
- 4.5. Генерация представления на основе модели
- 4.5.1. Отражение объектов JavaScript
- 4.5.2. Обработка массивов и объектов
- 4.5.3. Включение контроллера
- 4.6. Резюме
- 4.7. Ресурсы
- 5. Роль сервера в работе Ajax-приложения
- 5.1. Программы, выполняемые на сервере
- 5.2. Создание программ на стороне сервера
- 5.2.1. Популярные языки программирования
- 5.2.2. N-уровневые архитектуры
- 5.2.3. Управление моделью предметной области на стороне клиента и на стороне сервера
- 5.3. Принципы создания программ на сервере
- 5.3.1. Серверные программы, не соответствующие основным принципам разработки
- 5.3.2. Использование архитектуры Model2
- 5.3.3. Использование архитектуры на базе компонентов
- 5.3.4. Архитектуры, ориентированные на использование Web-служб
- 5.4. Частные решения: обмен данными
- 5.4.1. Взаимодействие, затрагивающее только клиентскую программу
- 5.4.2. Пример отображения информации о планетах
- 5.4.3. Взаимодействие, ориентированное на содержимое
- 5.4.4. Взаимодействие, ориентированное на сценарий
- 5.4.5. Взаимодействие, ориентированное на данные
- 5.5. Передача данных серверу
- 5.5.1. Использование HTML-форм
- 5.5.2. Использование объекта XMLHttpRequest
- 5.5.3. Управление обновлением модели
- 5.6. Резюме
- 5.7. Ресурсы
- III. СОЗДАНИЕ ПРОФЕССИОНАЛЬНЫХ AJAX-ПРИЛОЖЕНИЙ
- 6. Информация для пользователя
- 6.1. Создание качественного приложения
- 6.1.1. Отклик программы
- 6.1.2. Надежность
- 6.1.3. Согласованность
- 6.1.4. Простота
- 6.1.5. Как получить результат
- 6.2. Предоставление сведений пользователю
- 6.2.1. Поддержка ответов на собственные запросы
- 6.2.2. Обработка обновлений, выполненных другими пользователями
- 6.3. Создание системы оповещения
- 6.3.1. Основные принципы оповещения
- 6.3.2. Определение требований к пользовательскому интерфейсу
- 6.4. Реализация базовых средств оповещения
- 6.4.1. Отображение пиктограмм в строке состояния
- 6.4.2. Отображение подробных сообщений
- 6.4.3. формирование готовой системы
- 6.5. Предоставление информации в запросах
- 6.6. Информация о новизне данных
- 6.6.1. Простой способ выделения данных
- 6.6.2. Выделение данных с использованием библиотеки Scriptaculous
- 6.7. Резюме
- 6.8. Ресурсы
- 7. Безопасность Ajax-приложений
- 7.1. JavaScript и защита браузера
- 7.1.1. Политика ``сервера-источника``
- 7.1.2. Особенности выполнения сценариев в Ajax-приложении
- 7.1.3. Проблемы с поддоменами
- 7.1.4. Несоответствие средств защиты в различных браузерах
- 7.2. Взаимодействие с удаленным сервером
- 7.2.1. Сервер в роли посредника при обращении к удаленной службе
- 7.2.2. Взаимодействие с Web-службами
- 7.3. Защита конфиденциальной информации
- 7.3.1. Вмешательство в процесс передачи данных
- 7.3.2. Организация защищенного HTTP-взаимодействия
- 7.3.3. Передача шифрованных данных в ходе обычного HTTP-взаимодействия
- 7.4. Управление доступом к потокам данных Ajax
- 7.4.1. Создание защищенных программ на уровне сервера
- 7.4.2. Ограничение доступа к данным из Web
- 7.5. Резюме
- 7.6. Ресурсы
- 8. Производительность приложения
- 8.1. Что такое производительность
- 8.2. Скорость выполнения JavaScript-программ
- 8.2.1. Определение времени выполнения приложения
- 8.2.2. Использование профилировщика Venkman
- 8.2.3. Оптимизация скорости выполнения Ajax-приложения
- 8.3. Использование памяти JavaScript-кодом
- 8.3.1. Борьба с утечкой памяти
- 8.3.2. Особенности управления памятью в приложениях Ajax
- 8.4. Разработка с учетом производительности
- 8.4.1. Измерение объема памяти, занимаемой приложением
- 8.4.2. Простой пример управления памятью
- 8.4.3. Как уменьшить объем используемой памяти в 150 раз
- 8.5. Резюме
- 8.6. Ресурсы
- IV. AJAX В ПРИМЕРАХ
- 9. Динамические связанные комбинации
- 9.1. Сценарий двойной комбинации
- 9.1.1. Недостатки клиентского решения
- 9.1.2. Недостатки клиентского решения
- 9.1.3. Решения, предлагаемые Ajax
- 9.2. Архитектура клиента
- 9.2.1. Разработка формы
- 9.2.2. Разработка взаимодействия клиент/сервер
- 9.3. Реализация сервера: VB.NET
- 9.3.1. Определение формата XML-ответа
- 9.3.2. Написание кода сервера
- 9.4. Представление результатов
- 9.4.1. Навигация в документе XML
- 9.4.2. Применение каскадных таблиц стилей
- 9.5. дополнительные вопросы
- 9.5.1. Запросы при выборе нескольких элементов
- 9.5.2. Переход от двойного связного выбора к тройному
- 9.6. Реструктуризация
- 9.6.1. Новый и улучшенный объект net.ContentLoader
- 9.6.2. Создание компонента двойного списка
- 9.7. Резюме
- 10. Опережающий ввод
- 10.1. Изучаем опережающий ввод
- 10.1.1. Типичные элементы приложений опережающего ввода
- 10.1.2. Google Suggest
- 10.1.3. Ajax как средство опережающего ввода
- 10.2. Структура серверной части сценария: C#
- 10.2.1. Сервер и база данных
- 10.2.2. Тестирование серверного кода
- 10.3. Структура клиентской части сценария
- 10.3.1. HTML
- 10.3.2. JavaScript
- 10.3.3. Обращение к серверу
- 10.4. дополнительные возможности
- 10.5. Реструктуризация
- 10.5.1. День 1: план разработки компонента TextSuggest
- 10.5.2. День 2: создание TextSuggest- понятного и настраиваемого компонента
- 10.5.3. День 3: включаем Ajax
- 10.5.4. День 4: обработка событий
- 10.5.5. День 5: пользовательский интерфейс всплывающего окна с предлагаемыми вариантами
- 10.5.6. Итоги
- 10.6. Резюме
- 11. Улучшенный Web-портал Ajax
- 11.1. Эволюционирующий портал
- 11.1.1. Классический портал
- 11.1.2. Портал с богатым пользовательским интерфейсом
- 11.2. Создание портала с использованием Java
- 11.3. Регистрация Ajax
- 11.3.1. Таблица пользователя
- 11.3.2. Серверная часть кода регистрации: Java
- 11.3.3. Структура регистрации (клиентская часть)
- 11.4. Реализация окон DHTML
- 11.4.1. База данных окон портала
- 11.4.2. Серверный код окна портала
- 11.4.3. добавление внешней библиотеки JavaScript
- 11.5. Возможность автоматического сохранения
- 11.5.1. Адаптация библиотеки
- 11.5.2. Автоматическая запись информации в базе данных
- 11.6. Реструктуризация
- 11.6.1. Определение конструктора
- 11.6.2. Адаптация библиотеки AjaxWindows.js
- 11.6.3. Задание команд портала
- 11.6.4. Обработке средствами Ajax
- 11.6.5. Выводы
- 11.7. Резюме
- 12. `Живой` поиск с использованием XSLT
- 12.1. Понимание технологий поиска
- 12.1.1. Классический поиск
- 12.1.2. Недостатки использования фреймов и всплывающих окон
- 12.1.3. `Живой` поиск с использованием Ajax и XSLT
- 12.1.4. Возврат результатов клиенту
- 12.2. Код клиентской части сценария
- 12.2.1. Настройка клиента
- 12.2.2. Инициализация процесса
- 12.3. Код серверной части приложения: PHP
- 12.3.1. Создание XML-документа
- 12.3.2. Создание документа XSLT
- 12.4. Объединение документов XSL и XML
- 12.4.1. Совместимость с браузером Microsoft Internet Explorer
- 12.4.2. Совместимость с браузерами Mozilla
- 12.5. Последние штрихи
- 12.5.1. Применение каскадных таблиц стилей
- 12.5.2. Улучшение поиска
- 12.5.3. Использовать ли XSLT
- 12.5.4. Решение проблемы закладок
- 12.6. Реструктуризация
- 12.6.1. Объект XSLTHelper
- 12.6.2. Компонент `живого` поиска
- 12.6.3. Выводы
- 12.7. Резюме
- 13. Создание приложений Ajax, не использующих сервер
- 13.1. Считывание информации из внешнего мира
- 13.1.1. Поиск XML-лент
- 13.1.2. Изучение структуры RSS
- 13.2. Богатый пользовательский интерфейс
- 13.2.1. Чтение лент
- 13.2.2. HTML-структура без таблиц
- 13.2.3. Гибкое CSS-форматирование
- 13.3. Загрузка RSS-лент
- 13.3.1. Глобальный уровень
- 13.3.2. Предварительная загрузка средствами Аах
- 13.4. Богатый эффект перехода
- 13.4.1. Правила прозрачности, учитывающие индивидуальность браузеров
- 13.4.2. Реализация затухающего перехода
- 13.4.3. Интеграция таймеров JavaScript
- 13.5. дополнительные возможности
- 13.5.1. Введение дополнительных лент
- 13.5.2. Интеграция функций пропуска и паузы
- 13.6. Как избежать ограничений проекта
- 13.6.1. Обход системы безопасности браузеров Mozilla
- 13.6.2. Изменение масштаба приложения
- 13.7. Реструктуризация
- 13.7.1. Модель приложения
- 13.7.2. Представление приложения
- 13.7.3. Контроллер приложения
- 13.7.4. Выводы
- 13.8. Резюме
- V. ПРИЛОЖЕНИЯ
- А. Инструменты для профессиональной работы с Ajax
- А.1. Правильный набор инструментов
- А.1.1. Получение совместимых инструментов
- А.1.2. Создание собственных инструментов
- А.1.3. Сопровождение набора инструментов
- А.2. Редакторы и IDE
- А.2.1. Что требуется от редактора кода
- А.2.2. Существующие продукты
- А.3. Отладчики
- А.3.1. для чего нужен отладчик
- А.З.2. Отладчики JavaScript
- А.3.З. Отладчики HTTP
- А.3.4. Создание консоли вывода, встроенной в браузер
- А.4. Инспекторы DOM
- А.4.1. Использование DOM Inspector для браузеров Mozilla
- А.4.2. Инспекторы DOM для браузера Internet Explorer
- А.4.3. Средство Safari DOM Inspector для Мас OS X
- А.5. Установка расширений Firefox
- А.6. Ресурсы
- Б. JavaScript и объектно-ориентированное программирование
- Б.1. JavaScript - это не Java
- Б.2. Объекты в JavaScript
- Б.2.1. формирование объектов
- Б.2.2. функции-конструкторы, классы и прототипы
- Б.2.З. Расширение встроенных классов
- Б.2.4. Наследование прототипов
- Б.2.5. Отражение в JavaScript-объектах
- Б.2.6. Интерфейсы и виртуальные типы
- Б.З. Методы и функции
- Б.З.1. функции как независимые элементы
- Б.З.2. Присоединение функций к объектам
- Б.З.З. Заимствование функций из других объектов
- Б.З.4. Обработка событий в Ajax-программах и контексты функций
- Б.З.5. Замыкания в JavaScript
- Б.4. Выводы
- Б.5. Ресурсы
- В. Библиотеки Ajax
- Предметный указатель
<p>В книге "Ajax в действии" описана новая технология создания вебразработок с конкретными примерами разработки веб-приложений, получившая имя AJAX (Asynchronous JavaScript and XML). В книге рассмотрены составные части AJAX : JavaScript, CSS, DOM и объект XMLHttpRequest. Авторы книги - Дейв Крейн, Эрик Паскарелло и Даррен Джеймс - рассматривают недостатки классических web-приложений, предназначенных для работы в сети, и показывают, как можно устранить их, с помощью асинхронных запросов и передачи части функций от сервера к клиенту. Передача функциональных возможностей от сервера к клиенту приводит к существенному возрастанию объема и сложности клиентского кода, написанного на языке JavaScript. Управление кодом web-приложения — сложная задача, поэтому авторы уделяют внимание образам разработки (см. обсуждение термина design patterns ... ) и реструктуризации кода. Правильное применение этих средств позволяет обеспечить поддержку приложения и возможность повторного использования его компонентов. Большое внимание уделено также вопросам взаимодействия клиента и сервера, а также применению архитектуры "модель–представление–контроллер" на разных уровнях приложения. Читатель также найдет сведения о защите и производительности — важных характеристиках, существенно влияющих на популярность любого продукта среди пользователей. В последней части книги приведены примеры практического использования технологии Ajax: расширение возможностей HTML-форм, организация опережающего ввода, реализация "живого" поиска с использованием XSL и поддержка RSS. <br />В приложениях содержится дополнительная информация об инструментальных средствах, языке JavaScript и библиотеках. Эта информация поможет программистам в работе над реальными приложениями. Материал книги изложен на высоком уровне и наверняка будет полезен специалистам высокой и средней квалификации.</p>
Дейв Крейн, Эрик Паскарелло
Книги > Компьютеры и Интернет > Интернет и Web-страницы > Web-мастеринг. Языки и инструменты > Web-программирование > PHP
isbn:5-8459-1034-X
151937
BYR
out of stock
AJAX в действии: технология - Asynchronous JavaScript and XML
9.29
10
0
7
Давно искал на русском. Есть такая же на английском с Амазона. Там она на порядок дороже.
Сама книга просто великолепна! Однозначно должна быть у каждого Веб-кодера и дизайнера независимо от того на чем вы пишете.
Одна из немногих толковых книг (не специальных) до Javascript. Авторами использован ООП-подход к кодированию на этом языке - что само по себе для профессионалов стандарт а вот для новичков будет сложно понять и разобраться.
Сами принципы использования технологии не раскрыты в полной мере - вероятно считалось что читатель уже с ней знаком. Посему если вы не имеете одновременно опыта в написании кода как для клиентской части так и для серверной части - будете путаться.
Подборка примеров мне показалось недостаточно актуальной на сегодняшний день - практически все существует в готовом виде во многих Javascript-фреймворках.
Главы написаны в неудобной для чтения и понимания последовательности.
Однако в целом книга более чем достойная. Профессионалов она всеже наврядли удовлетворит. Им советую просто прочесть а для себя поискать англоязычные на ОЗОНЕ или Amazon посеръезнее и поглубже.
Лучшее, что есть по JavaScript
Книга хорошо расписывает поэтапный процесс построения приложений.
Макулатура