| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > JavaScript: Общие вопросы > Первая книга про AJAX на русском |
| Автор: 12345c 11.7.2006, 20:50 |
| http://www.williamspublishing.com/Books/5-8459-1034-X.html. Дейв Крейн, Эрик Паскарелло, Даррен Джеймс, 640 стр., 2006, 2 кв.; изд-во "Диалектика-Вильямс". Точнее, она - одна из первых. Известна ещё 1, идущая в той же первой стае: "AJAX и PHP. Разработка динамических веб-приложений”, 300 стр, тоже в июле появляется в продаже. Об английском оригинале: http://ajaxphp.packtpub.com (на английском). Там лежат главы 1 и 5, но тоже на английском. Поэтому рассмотрим сначала то, что "под фонарём". Отличие, кстати, в том, что один из авторов писал приложения на Java+Javascript, поэтому он чаще упоминает о том, что на роль серверного скрипта годится Java. Как известно, она традиционно используется в более мощных, масштабируемых и ответственных приложениях, чем PHP. В его приложениях присутствовал генерируемые клиентские скрипты, но текст книги придерживается заданных для неё рамок и не выходит на уровень генерации скриптов на сервере. ...До сих пор, как известно, мы пользовались исключительно статьями и справками из и-нета для ознакомления с работой объекта XMLHttpRequest, в простонародье называемом "технологией AJAX". В переводе с журналистского это означает "асинхронный Javascript и XML". На самом же деле подразумевается работа веб-страницы с обновлением информации от сервера без её перезагрузки, что выполняется упромянутым объектом. Нет необходимости использовать XML-компоненту объекта, более того, без неё работать удобнее, не нужно лишних тегов и непременной валидности кода. Тот же самый эффект достигался и ранее, без присутствия этого объекта в инструментах браузера, тремя различными способами - подгрузкой картинок или скрипта *.js в файле без перезагрузки страницы, и подгрузкой страниц в дополнительный фрейм. Но так случайно получилось, что именно XMLHttpRequest оказался наиболее удобным объектом для подгрузки информации, и применение его в инструментах Google (почта, Google Suggest) послужило катализатором развития интереса к нему в мире и срочной доработкой основных браузеров для его поддержки. Таким образом, технология, присутствовавшая в IE ещё с 2002 года, внезапно стала востребованной и желанной на многих современных интерактивных сайтах, названий которых уже сотни, если не тысячи. Это - онлайн-RSS-агрегаторы (подгрузка новостей), фотосайты (механизм пометки тегов, примечаний), онлайновые редакторы и офисы. Появляются первые крупные инструментальные средства для разработки AJAX-приложений (некоторые из них - Spry (Adobe), Atlas (MS), подробности - http://js2.ru/newsWebTech/index.shtml) и масса онлайн-сервисов, Shopify, Yahoo Merchant. веб выходит на новый уровень интерактивности, и этому явлению присвоен даже новый термин - "Web 2.0". Движущим механизмом его является предмет рассматриваемой нами книги. На сайте издательства доступны некоторые главы, http://www.williamspublishing.com/PDF/5-8459-1034-X/intro.pdf (85 К) и http://archive.williamspublishing.com/cgi-bin/materials.cgi?isbn=5-8459-1034-X (1.1 М), что позволяет посмотреть на стиль книги до её покупки. Попробуем, хотя под рукой всей книги нет. Её, правда, несложно увидеть в онлайн-продаже по цене около 400 руб. Рассмотрим книгу по главам (более подробно пункты оглавления http://www.williamspublishing.com/PDF/5-8459-1034-X/content.pdf , 500 КБа). Книга рассчитана на тех, кто уже знает программирование, Javascript и одну из серверных веб-технологий. Подчёркивается, что необходимо из уже известных компонент выделить новое, организовать в единый процесс, и по мере сложности задач, выбрать подходящий инструмент, не забывая о большой роли серверной стороны. Рассмотрены необходимые компоненты на клиенте (глава 2), идеология (главы 1, 4), важность серверных инструментов в случае сложных задач (приложения А.1-А.5, http://forum.vingrad.ru/books/ajax/Ajax5.pdf), примеры разработок (главы 6, 9-13). http://www.williamspublishing.com/PDF/5-8459-1034-X/preface.pdf, 90 Кба, на кого рассчитана, структура глав. __I. Новый взгляд на Web-приложение 31 1. Каким должен быть Web-интерфейс 33 2. Знакомство с Ajax 63 3. Управление кодом Ajax 99 __II. Основные подходы к разработке приложений 145 4. Web-страница в роли приложения 147 (да, с ним активное приложение помещается в веб-страницу) 5. Роль сервера в работе Ajax-приложения (http://forum.vingrad.ru/books/ajax/Ajax5.pdf, 800 К) 185 Начало главы занимает описание сути клиент-серверных технологий, которое происходит на более глубоком уровне, чем для начинающих веб-мастеров. Книга рассчитана на разработчиков информационных систем, поэтому речь идёт о трёхзвенной модели "клиент--веб-сервер--СУБД". Внимательно разбираются причины отделения уровня бизнес-логики (связи между документами) от структуры программ на сервере. раскрывается важная роль библиотек компонентов для реализации сложных интерфейсов на клиенте (Windows forms for .NET, JavaServer Faces). __III. Создание профессиональных Ajax-приложений 235 6. Информация для пользователя 237 (работа с пользователем приложения в Ajax) 7. Безопасность Ajax-приложений (http://www.williamspublishing.com/PDF/5-8459-1034-X/part.pdf, 1.5 М) 271 Подходы к безопасности и браузерные отличия рассмотрены всесоронне и на должном уровне. А что ещё ожидать от авторов-действующих разработчиков? Например, есть работа с веб-службами через Ajax с конкретными примерами, работа через https, шифрование ключами, зашифрованные заголовки. 8. Производительность приложения 303 (в том числе и методики оптимизации по памяти) __IV. Ajax в примерах 347 9. Динамические связанные комбинации 349 (подгрузка контента?) 10. Опережающий ввод 381 (типа Google Suggest) 11. Улучшенный Web-портал Ajax 439 (как расширяются возможности) 12. "Живой" поиск с использованием XSLT 479 (и живая работа с XSLT!) 13. Создание приложений Ajax, не использующих сервер 515 (пример - RSS) __V. Приложения 569 А. Инструменты для профессиональной работы с Ajax 571 Б. JavaScript и объектно-ориентированное программирование 597 В. Библиотеки Ajax 625 Вывод: в отличие от заявления http://forum.vingrad.ru/index.php?showtopic=103637&view=findpost&p=786844 "Javascript. Полное руководство", что книга нужна "разработчикам-профессионалам", http://www.williamspublishing.com/PDF/5-8459-1034-X/preface.pdf (о книге, на кого рассчитана, структура глав, 90 К) в данной книге выглядит абсолютно убедительно. Уровень предполагает знание предмета и последовательно даёт самые необходимые практические факты в использовании частей технологии. "Преподавательский синдром" не прослеживается, когда говорят очень доходчиво о простых вещах. Разработчикам стоит её внимательно прочесть и выписать себе ряд ключевых слов, с которыми будут иметь дело - названия инструментов и технологий. |
| Автор: Sardar 12.7.2006, 01:36 |
| В современных вебразработках аякс используеться крайне часто, при этом хаки с ифреймами и подзагрузкой скриптов уходят на второй план, XMLHttpRequest поддерживаеться всеми браузерами, стоящими у клиентов (людей), представляющих интерес (например для вебмагазина, бабушка со своим NT4 без сервиспаков вряд что нибудь купит Неотьемлеммой частью аякса идёт XSLT преобразования, т.к. перебрасывание чистого текста и форматирование скриптами в браузере или ещё хуже, перебрасывание вёрстки - есть дикий и галимый по своей сути изврат. Конечно в книге по аяксу мануал XSLT будет выглядеть глупо, поэтому упоминание + пример как это, надеюсь, сделано в книге (глава 12) вызывает уважение. Стоит отметить что в последнее время аяксу уделяеться очень много внимания со стороны "монстров" (Sun, MS и т.д.), поэтому разрабатываються либы/компоненты скрывающие клиентскую часть, как скрыты формы и окошки для "серверного" вебпрограммиста C#/Java средней руки. Передать переменную из JS по клику кнопки на сервлет/скрипт и обратно, это всё обычно хорошо работает, но также обычно тормозит и лихо весит Так давайте же знать как это работает, самому писать компоненты, но и не гнушаться пользовать готовое если есть Жаль на русском книгу конечно не достану, но в оригинале постараюсь найти |
| Автор: 12345c 12.7.2006, 15:22 |
| Тогда смотри здесь: http://www.manning.com/crane/ И заодно на английском ещё эти главы: http://www.manning-source.com/books/crane/crane_ch04.pdf (1.5 М) http://www.manning-source.com/books/crane/crane_ch09.pdf (1.1 М) http://www.webreference.com/programming/ajax/ (html) |
| Автор: Aliance 14.7.2006, 12:14 |
| Спасибо, очень хотел купить книгу об AJAX, мельком видел упомянутуб тобой другую книгу, но ей предпочел замечательную книгу о PHP5 |
| Автор: 12345c 14.7.2006, 13:38 |
| Aliance, о PHP5 какого автора? :) Если действительно замечательная, то стоит знать. |
| Автор: Aliance 15.7.2006, 12:29 |
| От Котерова и Костарева, думал слышал. Вот тут внизу есть и описание и фотография: http://www.php5.ru/ |
| Автор: aazon 16.7.2006, 12:31 |
| Был в пятницу в Библио-глобусе, ездил специально за Ajaxом. Скажу сразу, что разочаровался в книге. Пролистав ее, нашел кучу воды и вещей, которые уже давно всем известны и лишь косвенно касаются самой технологии. Вобщем из 600 предлагаемых к покупке полезными оказываются лишь порядка 150-200 страниц. ИМХО |
| Автор: 12345c 16.7.2006, 15:50 |
| aazon, тем более интересно получить частное мнение о том, какие именно вопросы, подробности Вы считаете неуместными. http://forum.vingrad.ru/index.php?showtopic=103637 я посчитал, что воды много; в этой тоже подробно описано то же самое клиент-серверное взаимодействие в гл.5, но показалось, что на совсем другом уровне, необходимом для введения. Добавлено @ 15:53 (Хотя лично для меня нового, но относящегося к Ajax, было в прочитанных главх процентов 30, главным образом, конкретные примеры.) |
| Автор: Exception 19.7.2006, 13:56 |
| Вчера купил в "Доме Книги". Уже по прочитанным 150 страницам складывается мнение - книга просто замечательная! Очень просто и доходчиво рассматриваются вещи, при этом автор обязательно дает полезные советы по отношению к теме. Порадовало, что книга современная - рассматривается взаимодействие с различными серверными технологиями, хотя обычно авторы фокусируются на одной. A must have. |
| Автор: 12345c 26.7.2006, 18:53 |
| Свежий анекдот на тему AJAX: Увидел юзер в чате двух своих знакомых - ламера и хакера. Залогинился, спрашивает: -- Привет! Слышали новость? Вышла первая книга про АЯКС! Ламер спрашивает: -- А что такое АЯКС? Хакер спрашивает: -- А что такое книга? |
| Автор: kpuknet 28.7.2006, 21:18 |
| А видели ещё одну новую книгу про AJAX: http://www.books.ru/shop/books/429052 Я по содержаниям смотрел... мне кажется что последняя (AJAX и PHP) получше будет. Так что я первым делом побегу покупать наверно AJAX и PHP, тем более что и цена 250, хотя дело не в цене. Содержание AJAX и PHP: Об авторах Предисловие Глава 1. AJAX и будущее веб-приложений Предоставление функциональности через Интернет Разработка веб-сайтов до 1990 года Что такое AJAX Создание простого приложения на основе AJAX и PHP Подведение итогов Глава 2. Клиентские технологии на основе JavaScript JavaScript и объектная модель документа (DOM) События в JavaScript и DOM И еще о DOM JavaScript, DOM и CSS Использование объекта XMLHttpRequest Работа со структурой XML Подведение итогов Глава 3. Технологии, применяемые на стороне сервера: PHP и MySQL PHP и DOM Передача параметров и обработка ошибок в PHP Соединение с удаленным сервером и безопасность сценариев JavaScript Доверенный сценарий на стороне сервера Основные принципы выполнения повторяющихся асинхронных запросов Работа с MySQL Технология обертывания и разделения функциональности Подведение итогов Глава 4. Верификация заполнения форм в AJAX Реализация проверки правильности в AJAX Подведение итогов Глава 5. Чат AJAX Введение в технологию прямого общения по сети Реализация чата на основе технологии AJAX Подведение итогов Глава 6. Подсказки и функция автодополнения в AJAX Введение в подсказки и функцию автодополнения на базе AJAX Реализация подсказок и функции автодополнения средствами AJAX Подведение итогов Глава 7. Построение диаграмм в реальном времени средствами SVG и AJAX Реализация построения диаграмм в реальном времени Подведение итогов Глава 8. Таблицы в AJAX Реализация таблиц данных на стороне клиента средствами AJAX и XSLT Подведение итогов Глава 9. Чтение лент новостей в AJAX Работаем с RSS Структура документа RSS Реализация чтения лент RSS с помощью технологии AJAX Подведение итогов Глава 10. Технология drag-and-drop в AJAX Применение механизма перетаскивания во Всемирной паутине Создание приложения с поддержкой механизма перетаскивания Подведение итогов Приложение A. Подготовка рабочего окружения Алфавитный указатель Я смотрю много случаев применения и использования AJAX |
| Автор: 12345c 28.7.2006, 23:18 |
| kpuknet, Да, я там про неё упоминал в начале первого поста. Но главы на англ. не читал и всю не видел. Когда почитаешь, опиши впечатления |
| Автор: kpuknet 28.7.2006, 23:27 |
| ок, только сравнивать не с чем ). Вот кстати 3 книги на англ по AJAX: http://alkaed.com/up/books/ кушаем) |
| Автор: 12345c 28.7.2006, 23:31 |
| В этой, которая в действии, тоже много примеров, и сложные в том числе; это было видно на примере главы 7. Безопасность Ajax-приложений. (есть в онлайне) - последовательно рассматривается работа с https: - протоколом. И по оглавлению видно, что каждая глава - это разбор примера в своей области. главы 6, 9-13. В подробном содержании тоже видно. - http://www.williamspublishing.com/PDF/5-8459-1034-X/content.pdf Здесь привёл содержание глав 9-13, вытащенные из PDF, чтобы легче сравнивать: IV. AJAX В ПРИМЕРАХ__________________________ 347 9. Динамические связанные комбинации 349 9.1. Сценарий двойной комбинации 350 9.1.1. Недостатки клиентского решения 350 9.1.2. Недостатки клиентского решения 351 9.1.3. Решения, предлагаемые Ajax 352 9.2. Архитектура клиента 353 9.2.1. Разработка формы 353 9.2.2. Разработка взаимодействия клиент/сервер 355 9.3. Реализация сервера: VB.NET 356 9.3.1. Определение формата XML-ответа 357 9.3.2. Написание кода сервера 358 9.4. Представление результатов 360 9.4.1. Навигация в документе XML 361 9.4.2. Применение каскадных таблиц стилей 362 9.5. Дополнительные вопросы 364 9.5.1. Запросы при выборе нескольких элементов 364 9.5.2. Переход от двойного связного выбора к тройному 365 9.6. Реструктуризация 366 9.6.1. Новый и улучшенный объект net.ContentLoader 367 9.6.2. Создание компонента двойного списка 372 9.7. Резюме 379 10. Опережающий ввод 381 10.1. Изучаем опережающий ввод 382 10.1.1. Типичные элементы приложений опережающего ввода 382 10.1.2. Google Suggest 384 10.1.3. Ajax как средство опережающего ввода 385 10.2. Структура серверной части сценария: С# 386 10.2.1. Сервер и база данных 386 10.2.2. Тестирование серверного кода 388 10.3. Структура клиентской части сценария 389 10.3.1. HTML 389 10.3.2. JavaScript 390 10.3.3. Обращение к серверу 400 10.4. Дополнительные возможности 410 10.5. Реструктуризация 411 10.5.1. День 1: план разработки компонента TextSuggest 412 10.5.2. День 2: создание TextSuggest—понятного и настраиваемого компонента 415 10.5.3. День 3: включаем Ajax 418 10.5.4. День 4: обработка событий 423 10.5.5. День 5: пользовательский интерфейс всплывающего окна с предлагаемыми вариантами 430 10.5.6. Итоги 437 10.6. Резюме 437 11. Улучшенный Web-портал Ajax 439 11.1. Эволюционирующий портал 440 11.1.1. Классический портал 440 11.1.2. Портал с богатым пользовательским интерфейсом 442 11.2. Создание портала с использованием Java 443 11.3. Регистрация Ajax 444 11.3.1. Таблица пользователя 445 11.3.2. Серверная часть кода регистрации: Java 446 11.3.3. Структура регистрации (клиентская часть) 449 11.4. Реализация окон DHTML 454 11.4.1. База данных окон портала 454 11.4.2. Серверный код окна портала 455 11.4.3. Добавление внешней библиотеки JavaScript 460 11.5. Возможность автоматического сохранения 462 11.5.1. Адаптация библиотеки 463 11.5.2. Автоматическая запись информации в базе данных 465 11.6. Реструктуризация 468 11.6.1. Определение конструктора 470 11.6.2. Адаптация библиотеки AjaxWindows.js 471 11.6.3. Задание команд портала 473 11.6.4. Обработке средствами Ajax 476 11.6.5. Выводы 477 11.7. Резюме 478 12. "Живой" поиск с использованием XSLT 479 12.1. Понимание технологий поиска 480 12.1.1. Классический поиск 480 12.1.2. Недостатки использования фреймов и всплывающих окон 482 12.1.3. "Живой" поиск с использованием Ajax и XSLT 483 12.1.4. Возврат результатов клиенту 484 12.2. Код клиентской части сценария 485 12.2.1. Настройка клиента 486 12.2.2. Инициализация процесса 487 12.3. Код серверной части приложения: РНР 488 12.3.1. Создание XML-документа 489 12.3.2. Создание документа XSLT 491 12.4. Объединение документов XSL и XML 494 12.4.1. Совместимость с браузером Microsoft Internet Explorer 496 12.4.2. Совместимость с браузерами Mozilla 496 12.5. Последние штрихи 497 12.5.1. Применение каскадных таблиц стилей 498 12.5.2. Улучшение поиска 499 12.5.3. Использовать ли XSLT 501 12.5.4. Решение проблемы закладок 502 12.6. Реструктуризация 503 12.6.1. Объект XSLTHelper 504 12.6.2. Компонент "живого" поиска 508 12.6.3. Выводы 512 12.7. Резюме 512 13. Создание приложений Ajax, не использующих сервер 515 13.1. Считывание информации из внешнего мира 516 13.1.1. Поиск XML-лент 517 13.1.2. Изучение структуры RSS 518 13.2. Богатый пользовательский интерфейс 520 13.2.1. Чтение лент 521 13.2.2. HTML-структура без таблиц 522 13.2.3. Гибкое CSS-форматирование 525 13.3. Загрузка RSS-лент 530 13.3.1. Глобальный уровень 530 13.3.2. Предварительная загрузка средствами Ajax 532 13.4. Богатый эффект перехода 535 13.4.1. Правила прозрачности, учитывающие индивидуальность браузеров 536 13.4.2. Реализация затухающего перехода 536 13.4.3. Интеграция таймеров JavaScript 538 13.5. Дополнительные возможности 540 13.5.1. Введение дополнительных лент 540 13.5.2. Интеграция функций пропуска и паузы 542 13.6. Как избежать ограничений проекта 545 13.6.1. Обход системы безопасности браузеров Mozilla 545 13.6.2. Изменение масштаба приложения 548 13.7. Реструктуризация 548 13.7.1. Модель приложения 549 13.7.2. Представление приложения 551 13.7.3. Контроллер приложения 555 13.7.4. Выводы 567 13.8. Резюме 567 Книги - хорошо, будем сравнивать. |
| Автор: smartov 29.7.2006, 12:29 |
Я очень удивлен слышать такое от знатока JS. Весит это все ерунду. И работает не медленее чем любой другой сетевой запрос. Хотя не стану отрицать что после прочтения топика мне стало интересно попробовать именно ajax. |
| Автор: 12345c 11.8.2006, 13:20 | ||
| Подведём промежуточные итоги голосования по истечении месяца со дня публикации. Каковы Ваши намерения в освоении AJAX?
Результаты интересны. Отсутствие пассивных ожидателей инструментов-помощников говорит о том, что на форум ходят люди, не останавливающиеся перед техническими трудностями. Довольно мало нелюбителей футбола. Будем собирать голоса дальше. В сентябре появятся новые люди, тоже что-то скажут. |