Автор: | Флэнаган Д. |
Страниц: | 1080 |
Масса: | 1364 |
Обложка: | мягкая |
Издана: | Июнь 2012 |
C момента выхода первого издания в 1996 году книга "JavaScript: Подробное руководство" превратилась в библию программистов на JavaScript. За эти годы было издано более 500000 экземпляров, и веб-разработчики по-прежнему с восторгом отзываются о ней.
Эта книга - одновременно и руководство программиста, и полноценный справочник по базовому языку JavaScript и клиентским прикладным интерфейсам, предоставляемым веб-броузерами.
Книга делится на четыре части. Часть I охватывает сам язык JavaScript. Часть II охватывает клиентский JavaScript: прикладные программные интерфейсы JavaScript, определяемые стандартом HTML5 и сопутствующими ему стандартами и реализованные в веб-броузерах.
Издание содержит практически все сведения, необходимые для разработки сценариев JavaScript, включая:
Глубокое обсуждение разносторонних тем клиентского JavaScript сопровождается многочисленными и достаточно сложными примерами, которые демонстрируют, как:
Часть III книги представляет собой обширный справочник по базовому языку JavaScript, включающий описания всех классов, объектов, конструкторов, методов, функций, свойств и констант, определенных в JavaScript 1.8, V8 3.0 и ECMAScript 5.
Часть IV - справочник по клиентскому JavaScript. Здесь описываются прикладные программные интерфейсы веб-броузеров, стандарт DOM API Level 3 и недавно вошедшие в стандарт HTML5 технологии WebSockets и WebWorkers, объекты localStorage и sessionStorage, а также теги "audio" и "video".
Шестое издание книги охватывает стандарты ECMAScript 5 (последняя версия спецификации базового языка) и HTML5 (последняя версия спецификации веб-платформы). Положения стандарта ECMAScript 5 рассматриваются на протяжении всей первой части. Нововведения, появившиеся в HTML5, в основном рассматриваются в конце второй части. Совершенно новыми в этом издании являются глава 11 "Подмножества и расширения JavaScript", глава 12 "Серверный JavaScript", глава 19 "Библиотека jQuery" и глава 22 "Прикладные интерфейсы HTML5".
Читатели предыдущих изданий могут заметить, что в этом издании полностью переписаны многие главы. Главы первой части книги, посвященные основам языка и охватывающие объекты, массивы, функции и классы, были переписаны заново и приведены в соответствие с современными приемами программирования. Ключевые главы второй части, описывающие документы и события, точно так же были полностью переписаны, чтобы привести их к современному уровню.
Издание рекомендуется программистам, имеющим опыт программирования и желающим изучить язык программирования для Веб, а также программистам, которые уже используют язык JavaScript и стремятся подняться на более высокий уровень мастерства и по-настоящему овладеть языком и веб-платформой.
Глава 1 включает краткий обзор глав первой и второй частей книги.
Часть I. Базовый JavaScript
В главе 2 "Лексическая структура" описаны основные лексические конструкции JavaScript, такие как комментарии, точка с запятой и набор символов Юникода. В главе 3 "Типы данных, значения и переменные" описаны переменные JavaScript и значения, которые можно присваивать этим переменным. В главе 4 "Выражения и операторы" рассматриваются выражения инициализации. Если фразы в языке JavaScript называются выражениями, то полные предложения называются инструкциями - им посвящена глава 5. Объекты и массивы обсуждаются в главах 6 и 7 соответственно. Глава 8 - это рассказ о функциях - именованных и параметризованных блоках программного кода JavaScript, которые определяются один раз, а использоваться могут многократно.
JavaScript - объектно-ориентированный язык, но используемая в нем объектная модель в корне отличается от модели, используемой в большинстве других языков. Глава 9 "Классы и модули" детально рассматривает объектно-ориентированное программирование на языке JavaScript на большом количестве примеров и является одной из самых больших глав в книге.
В главе 10 "Шаблоны и регулярные выражения" описывается грамматика регулярных выражений и демонстрируются приемы использования регулярных выражений для реализации сопоставления с текстовыми шаблонами. Глава 11 посвящена подмножествам и расширениям базового языка JavaScript. В главе 12 "Серверный JavaScript" представлены два способа использования JavaScript за пределами веб-броузеров.
Часть II. Клиентский JavaScript
В главе 13 "JavaScript в веб-броузерах" описываются детали использования JavaScript в веб-броузерах. Самое важное, что вы узнаете в этой главе, - программный код JavaScript может встраиваться в HTML-файлы с помощью тега "script". В главе 14 "Объект Window" исследуются приемы управления веб-броузером и описываются некоторые наиболее важные глобальные функции клиентского JavaScript.
Глава 15 "Работа с документами" демонстрирует, как с помощью JavaScript можно управлять HTML-элементами, которые определяют содержимое веб-страниц. В главе 16 "CSS" обсуждается, как с помощью JavaScript можно управлять каскадными таблицами стилей (CSS), определяющими представление содержимого.
JavaScript позволяет не только управлять содержимым и оформлением HTML-документов в веб-броузерах, но и определять поведение этих документов с помощью обработчиков событий. Глава 17 "Обработка событий" описывает, как определять и регистрировать обработчики событий и как вызываются эти обработчики при появлении событий.
Прикладной интерфейс, описываемый в главах 15-17, является достаточно сложным, и до недавнего времени испытывал проблемы с совместимостью между броузерами. По этим причинам многие или большинство программистов на клиентском JavaScript предпочитают использовать клиентские библиотеки или фреймворки, упрощающие программирование. Наиболее популярна библиотека jQuery, которая обсуждается в главе 19. Она определяет простой и удобный программный интерфейс для управления содержимым документа, его представлением и поведением. Библиотека была тщательно протестирована и может использоваться во всех основных броузерах, включая довольно старые, такие как IE6.
В главах 15-17 и 19 в действительности рассматривается все, что касается веб-страниц. Другие четыре главы второй части переключают внимание на веб-приложения. Они рассказывают об использовании веб-броузеров как прикладной платформы и описывают прикладной интерфейс, предоставляемый современными броузерами для поддержки сложных, современных клиентских веб-приложений.
Глава 18 "Работа с протоколом HTTP" описывает, как с помощью JavaScript можно управлять HTTP-запросами - своего рода сетевой прикладной интерфейс. Глава 20 "Сохранение данных на стороне клиента" описывает механизмы, позволяющие сохранять данные (и даже целые приложения) на стороне клиента для использования в последующих сеансах работы. Глава 21 "Работа с мультимедиа и графикой" охватывает клиентский прикладной интерфейс, позволяющий создавать произвольные графические изображения в HTML-теге "canvas". И наконец, глава 22 "Прикладные интерфейсы HTML5" охватывает новые прикладные интерфейсы веб-приложений, определяемые или принятые стандартом HTML5.
Сетевые взаимодействия, организация хранения данных, работа с графикой - все эти службы операционных систем, доступные посредством веб-броузеров, образуют новую, платформонезависимую среду выполнения приложений. Если вы нацелены на броузеры, которые поддерживают эти новые прикладные интерфейсы, то сейчас наступает самое интересное время для программистов на клиентском JavaScript.
Об авторе
Дэвид Флэнаган (David Flanagan) - программист и писатель. Он имеет собственный веб-сайт http://davidflanagan.com. Список его книг, выпущенных издательством O'Reilly, включает: "JavaScript Pocket Reference", "The Ruby Programming Language" ("Язык программирования Ruby", Питер, 2011), "Java in a Nutshell" ("Java. Справочник", Символ-Плюс, 2004) и "Java Examples in a Nutshell" ("Java в примерах. Справочник", Символ-Плюс, 2003). Дэвид закончил факультет информационных технологий Массачусетского технологического института. Вместе с супругой и детьми он живет на тихоокеанском побережье северо-запада Соединенных Штатов, между городами Сиэтл, Вашингтон и Ванкувер, в Британской Колумбии.
Отзывы специалистов
"Справочное руководство по JavaScript, совершенно необходимое опытным программистам … прекрасно организованное и очень подробное."
- Брендан Айк (Brendan Eich), создатель языка JavaScript, технический руководитель Mozilla
"Я сделал карьеру на знаниях, полученных из книги "JavaScript: Подробное руководство".
- Эндрю Хеджес (Andrew Hedges), Tapulous
"Это "Руководство" позволило мне овладеть языком JavaScript."
- Том Робинсон (Tom Robinson), сооснователь компании 280 North и один из создателей фреймворка Cappuccino
"Узнать, какие разделы JavaScript важны для меня больше всего, можно по загнутым страницам моего экземпляра "Руководства".
- Дж. Крис Андерсон (J. Chris Anderson), сооснователь компании CouchBase, участник проекта Apache CouchDB и автор книги "CouchDB: The Definitive Guide"
"... обязательное руководство для всех разработчиков на языке JavaScript. Если у меня появятся вопросы, связанные с JavaScript, я знаю, что найду в "Руководстве" нужный мне ответ. И это здорово."
- Рей Бэнгоу (Rey Bango), руководитель программы "Microsoft Client-Web Community" и член команды разработчиков библиотеки jQuery
Отзывы читателей
Исчерпывающий источник информации 24 сентября 2011
Франсуа Луи Николет (Francois Louis Nicolet)
Книга Флэнагана "JavaScript. Подробное руководство" для профессиональных программистов - то же, что новый оксфордский словарь для писателей: исчерпывающий источник ценной информации. Она содержит подробное описание базового и клиентского JavaScript с примерами, а также справочник. Книга всегда находится на моем рабочем столе, когда я занимаюсь программированием.
Прекрасное справочное руководство, 20 сентября 2011
Джон Гриффин (John Griffin), ведущий программист (Layton, Юта, США)
Сразу хочу сказать, что эта книга не для начинающих! С другой стороны, она является выдающимся справочником для опытных программистов, желающих овладеть языком JavaScript, и для JavaScript-программистов, которым необходимо иметь справочное руководство под рукой.
Она содержит исчерпывающую информацию о различиях между ECMAScript3 и ECMAScript5 и краткое знакомство с Ajax, JSON и jQuery.
В примерах программного кода имеются некоторые ошибки, которые, впрочем, легко исправить. Кроме того, по своему опыту могу заметить, что крайне редко встречаются книги по языкам программирования, свободные от каких-либо ошибок.
В целом же, она стоит свою цену, даже с учетом вышесказанного.
Должен иметь каждый программист на JavaScript, 12 сентября 2011
Орландо Эчеварриа (Orlando Echevarria)
Я настоятельно рекомендую приобрести эту книгу. Я покупал ее с первого ее издания и могу заявить, что она стоит свою цену!
Книга начинается с погружения в основы языка сценариев JavaScript и его семантику. Затем рассказывается об интеграции JavaScript и CSS, а также о библиотеке jQuery и поддержке архитектуры AJAX. Если вы не знакомы с основами и особенностями взаимодействия JavaScript с веб-браузером, вам едва ли стоит покупать эту книгу. Но если вы разбираетесь в этом, то обязательно должны приобрести ее!
Ценной особенностью этой книги является обширный справочник. Он часто выручал меня в сложных ситуациях, когда я не мог вспомнить, как вызывается тот или иной метод или функция.
Обеспечивает глубокое погружение в разработку сценариев на языке JavaScript, 23 мая 2011
Джеймс Скемп (James Skemp) "JamesRSkemp.com" (Мэдисон, Висконсин, США)
"JavaScript: Подробное руководство" - это не только исчерпывающий справочник по языку программирования, схожий с другими "толстыми книгами" издательства O'Reilly, но и руководство, предлагающее глубокое погружение в разработку сценариев на языке JavaScript. Однако если вы только начинаете изучать язык и собираетесь просто использовать какую-то из библиотек (например, jQuery), эта книга может оказаться не для вас.
Книга разбита на 4 части: базовый и клиентский JavaScript и подробные справочники по базовому и клиентскому JavaScript. Первые две части являются "глубоким погружением" в сам язык программирования JavaScript, начиная с фундаментальных основ и постепенно переходя ко все более сложным темам. В концепцию "глубокого погружения" входит представление современных приемов программирования. Первая часть (30% книги) представляет собой превосходный, достаточно полный учебник по языку программирования.
Вторая часть (40% книги) концентрируется на аспектах веб-программирования, для чего, собственно, большинство и использует язык JavaScript. Эта часть охватывает практически все, что только вы можете себе представить, а также рассказывает о библиотеке jQuery, об организации хранилищ данных на стороне клиента и функциональных возможностях, привнесенных стандартом HTML5. Знакомство с библиотекой jQuery занимает примерно 60 страниц, охватывает версию 1.4 и включает некоторые сведения о jQueryUI.
Третья и четвертая части - справочники - содержат довольно подробные сведения и примеры (что особенно ценно).