Веб-приложения на JavaScript

Интернет-портал MegaWEB

Интернет-портал MegaWEB содержит много ресурсов для веб-мастеров, интернет-разработчиков, веб-дизайнеров и seo-оптимизаторов. Это видеоуроки, книги и справочники в формате ebook: PDF-CHM-DJVU, а также программы и утилиты для того, чтобы сделать сайт или раскрутить сайт в сети Интернет.

Книга «Веб-приложения на JavaScript»

Версия для печати и PDA

Книга «Веб-приложения на JavaScript» позволит вам изучить все возможные приемы, используемые для создания современных JavaScript-приложений, в том числе структуры, паттерн MVC, фреймы, связь с удаленным сервером, кросс-доменные запросы, создание приложений реального времени и многое другое. Поддержка HTML5 и CSS3 с каждым днем становится все качественнее и полнее, но вам необходимо решить, основываясь на вашей клиентской аудитории, где именно можно использовать данные технологии. Создание на языке JavaScript многофункциональных Rich-приложений, которые выполняются на стороне клиента, – непростая задача, и это пособие поможет вам понять концепции разработки JavaScript-приложений на основе примеров реальных приложений. В целом издание ориентировано на разработчиков с определенным опытом работы с JavaScript и использованием JavaScript-библиотек таких как jQuery. Многие обсуждаемые в книге вопросы и темы, а особенно примеры приложений, могут послужить полезным справочником для опытных разработчиков JavaScript-приложений.

Веб-приложения на JavaScript

Обзор книги «Веб-приложения на JavaScript»

MVC и классы, начинается с рассмотрения истории JavaScript и затрагивает основы языка, оказывающие влияние на текущую реализацию и на круг его пользователей. Затем дается введение в архитектуру MVC, исследуются имеющиеся в JavaScript функции-конструкторы, прототипное наследование и способы создания собственной библиотеки классов.

События и наблюдение, рассказывает об обработке событий в браузерах, включая историю, API и поведение. Рассматриваются вопросы привязки событий с помощью jQuery, использования делегирования и создания собственных событий. Также исследуется использование событий, не имеющих отношения к модели DOM, с применением схемы PubSub.

Модели и данные, раскрывает принципы использования MVC-моделей в приложении, а также порядок загрузки удаленных данных и работы с ними. Объясняется важность MVC и организации пространства имен. В качестве примера, создается собственная ORM-библиотека для работы с данными модели. Затем рассматриваются способы загрузки удаленных данных и использованием JSONP и кросс доменной технологии AJAX. И наконец, даются сведения о сохранении данных модели с помощью локального хранилища HTML5 и их отправке на сервер, отвечающий требованиям RESTful.

Контроллеры и состояния, демонстрирует различные способы использования схемы контроллера для сохранения состояния на стороне клиента. Рассматриваются вопросы использования модулей для инкапсуляции логики и предотвращения засорения глобального пространства имен, затем рассматривается вопрос аккуратного связывания контроллеров с представлениями, прослушивания событий и работы с DOM. И наконец, рассматриваются вопросы маршрутизации, сначала с использованием фрагмента URL, начинающегося с символа решетки, а затем с использованием нового API истории HTML5.

Представления и использование шаблонов, посвящена представлениям и обработке шаблонов с помощью JavaScript. Рассматриваются разные способы динамического вывода представлений, а также различные библиотеки работы с шаблонами и места хранения шаблонов. Затем рассматривается привязка данных – подключение контроллеров моделей и представления к динамически синхронизируемым данным модели и данным представления.

Управление зависимостями, затрагивает подробности управления JavaScript-зависимостями с использованием модулей CommonJS. Изучается история и рассуждения, положенные в основу механизма CommonJS, способы создания CommonJS-модулей в браузере и различные вспомогательные библиотеки загрузки модулей, такие как Yabble и RequireJS. Затем рассматриваются способы автоматической изоляции модулей на стороне сервера, повышения производительности и экономии времени. И наконец, рассматриваются разные альтернативы CommonJS, такие как Sprockets и LABjs.

Работа с файлами, демонстрирует преимущества, предоставляемые HTML5, – API для работы с файлами. Рассматривается браузерная поддержка, множественная отправка файлов на сервер, получение файлов, перетаскиваемых в окно браузера, и файлов от событий клавиатуры. Затем объясняется чтение файлов с использованием блобов и слайсов и вывод результатов в браузер. Рассматриваются вопросы отправки файлов на сервер в фоновом режиме с использованием новой спецификации XMLHttpRequest Level и, наконец, показывается способ предоставления пользователям индикатора выполнения операции отправки файла и способ объединения отправки файлов с имеющимся в jQuery AJAX API.

Веб-технологии реального времени, затрагивает некоторые весьма увлекательные вопросы разработки приложений реального времени и технология WebSockets. Сначала рассматривается довольно бурная история развития технологии реального времени и ее текущая поддержка в браузерах. Затем изучаются подробности WebSockets и высокоуровневой реализации этой технологии, браузерной поддержки и API JavaScript. После этого демонстрируется простой RPC-сервер, использующий WebSockets для соединения серверов и клиентов. Затем уделяется внимание Socket.IO и изучается вопрос вписывания технологий реального времени в архитектуру приложения и в пользовательское восприятие.

Тестирование и отладка, рассматривает очень важные аспекты разработки веб-приложений на JavaScript: тестирование и отладку. Изучаются вопросы кросс-браузерного тестирования, выбора браузеров для тестирования, вопросы блочного тестирования. Также рассматриваются библиотеки для тестирования, такие как QUnit и Jasmine. Затем обращается внимание на автоматизированное тестирование и на постоянно работающие объединительные сервера, такие как Selenium. Затем осуществляется переход к вопросам отладки, исследуются веб-инспекторы Firefox и WebKit, консоль и вопросы использования отладчика JavaScript.

Развертывание, затрагивает еще одну важную, но часто недооцениваемую часть работы с веб-приложением JavaScript, – его развертывание. Упор делается главным образом на производительность и на способы использования кэширования, минификации, gzip-сжатия и других технологий, сокращающих начальное время загрузки вашего приложения. В конце кратко рассматриваются вопросы использования сети доставки контента – CDN для обслуживания статического содержимого в ваших интересах и вопросы использования встроенного в браузер механизма аудита, который может быть чрезвычайно полезен для повышения производительности вашего сайта.

Библиотека Spine, описывает основные части этой библиотеки: классы, события, модели и контроллеры. В качестве примера показано создание приложения, являющегося диспетчером контактов, в котором демонстрируется все изученное.

Библиотека Backbone, предоставляет полноценное введение в имеющую огромную популярность библиотеку Backbone, предназначенную для создания JavaScript-приложений. Рассматриваются основные понятия и классы Backbone, такие как модели, коллекции, контроллеры и представления. Затем исследуются вопросы синхронизации данных модели с данными на сервере с помощью RESTful JSON-запросов и вопросы составления подходящих для Backbone ответов со стороны сервера. В конце приводится пример приложения для ведения списка текущих дел, в котором демонстрируется работа основной части библиотеки.

Библиотека JavaScriptMVC, исследует возможности библиотеки JavaScriptMVC, являющейся популярной средой разработки, основанной на использовании библиотеки jQuery и применяемой для создания веб-приложений на JavaScript. Изучаются все основные компоненты JavaScriptMVC, такие как классы, модели и контроллеры, а также использование шаблонов на стороне клиента с целью визуализации представлений. В дается практический пример списка, реагирующего на CRUD-операции, который демонстрирует простоту создания абстрактных, многократно используемых, не засоряющих память виджетов с помощью JavaScriptMVC.

Основы jQuery, предоставляет краткое введение в jQuery, которое пригодится тем, кто почувствует необходимость освежить свое представление об этой библиотеке. Библиотека jQuery используется в большинстве приводимых примеров, поэтому знакомство с ней играет весьма важную роль. Здесь рассматривается основная часть API, например обход элементов DOM, работа с DOM, а также привязка событий, их инициирование и делегирование. Затем более пристально рассматривается имеющийся в jQuery AJAX API, отправка GET и POST JSON-запросов. После этого рассматриваются расширения jQuery и порядок использования инкапсуляции для обеспечения этой библиотекой роли законопослушной веб-гражданки. В конце рассматривается практический пример: создание дополнительного модуля jQuery под названием Growl.

CSS-расширения, рассматривает Less надстройку над CSS, расширяющую синтаксис каскадных таблиц стилей с помощью переменных, миксинов, операций и вложенных правил. Less способна существенно сократить объем набираемого кода CSS, особенно когда дело касается специфических для производителей браузеров CSS-правил. Рассматриваются основные улучшения синтаксиса, присущие Less, а также вопросы использования инструментов командной строки и библиотеки JavaScript для компиляции Less-файлов в обычный код CSS.

Справочник по CSS3, является справочником по CSS3. В нем предоставляются основы CSS3, объясняются префиксы производителей браузеров, а затем просматриваются основные добавления к спецификации. Среди всех свойств CSS3 особое внимание уделяется таким возможностям, как скругленные углы, rgba-цвета, отбрасываемые тени, градиенты, переходы и преобразования. В конце рассматривается так называемая постепенная деградация с использованием библиотеки Modernizr и практический пример использования новой спецификации box-sizing.

Все примеры из книги «Веб-приложения на JavaScript» доступны для изучения в электронном виде, и вы можете просматривать их в интерактивном режиме. Ресурсы разбиты по темам и содержат требуемые дополнительные библиотеки. Большинство примеров, приводимых в издании, доступны также в виде отдельных файлов.

Формат: PDF + файлы примеров
Качество: eBook
Страниц: 288

Поделиться с друзьями