Разработка Backbone.js приложений — Backbone - это javascript-библиотека для тяжелых фронтэнд javascript-приложений, таких, например, как gmail или twitter. В таких приложениях вся логика интерфейса ложится на браузер, что дает очень значительное преимущество в скорости интерфейса. Цель этой книги - стать удобным источником информации в помощь тем, кто разрабатывает реальные приложения с использованием Backbone. Издание охватывает теорию MVC и методы создания приложений с помощью моделей, представлений, коллекций и маршрутов библиотеки Backbone; модульную разработку ПО с помощью Backbone.js и AMD (посредством библиотеки RequireJS), решение таких типовых задач, как использование вложенных представлений, устранение проблем с маршрутизацией средствами Backbone и jQuery Mobile, а также многие другие вопросы.
Название: Разработка Backbone.js приложений Автор: Эдди Османи Издательство: Питер Год: 2014 Страниц: 352 Формат: PDF Размер: 5,16 МБ ISBN: 978-5-496-00962-1 Качество: Отличное Серия или Выпуск: Бестселлеры O'Reilly Язык: Русский
Содержание:
Предисловие Целевая аудитория Авторы книги Как читать эту книгу Использование примеров кода Благодарности Глава 1. Введение Что такое MVC? Что такое Backbone.js? В каких случаях необходим MVC-фреймворк на JavaScript? Чем хороша библиотека Backbone.js? О чем эта книга Глава 2. Ключевые. понятия Паттерн MVC MVC в Smalltalk-80 MVC во Всемирной паутине MVC на клиентской стороне и одностраничные приложения MVC на клиентской стороне: стиль Backbone Особенности реализации Модели Представления Что нам дает MVC? Углубленное изучение MVC Выводы Дополнительная информация Коротко о главном Библиотека Backbone.js Примеры использования Глава 3. Основы Backbone Подготовительные действия Модели Инициализация Значения по умолчанию Считывание и присваивание значений Прослушивание изменений модели Валидация Представления Создание новых представлений Что такое El? Коллекции Добавление и удаление моделей Считывание моделей Прослушивание событий Перезапись и обновление коллекций Вспомогательные функции Underscore API цепочек команд Сохранение моделей с помощью RESTful API Считывание моделей с сервера Сохранение моделей на сервер Удаление моделей с сервера Параметры События on(), off() и trigger() listenTo() и stopListening() События и представления Маршрутизаторы Backbone.history API синхронизации библиотеки Backbone Переопределение Backbone. sync Зависимости Выводы Глава 4. Упражнение 1: управление задачами - ваше первое приложение на Backbone.js Статический HTML Заголовок и сценарии HTML-код приложения Шаблоны Модель задачи Коллекция задач Представление приложения Представления отдельных задач Запуск приложения Приложение в действии Завершение и удаление задач Маршрутизация задач Выводы Глава 5. Упражнение 2: книжная библиотека - ваше первое RESTful-приложение на Backbone.js Подготовительные действия Создание модели, коллекции, представлений и объекта приложения Создание интерфейса Добавление моделей Удаление моделей Создание сервера базы данных Установка Node.js, npm и MongoDB Установка модулей узлов Создание простого веб-сервера Подключение к базе данных Взаимодействие с сервером Выводы Глава 6. Расширения Backbone MarionetteJS (Backbone. Marionette) Вспомогательный код отображения Сокращение вспомогательного кода с помощью класса Marionette. ItemView Управление памятью Управление регионами Приложение для управления задачами на основе Marionette TodoMVC.js Контроллеры CompositeView TodoMVC.TodoList.Views.js Удобнее ли поддерживать приложения на Marionette? Marionette и гибкость Простая версия, автор - Джеррод Оверсон (Jarrod Overson) RequireJS-версия, автор тот же Версия с Marionette-модулями, автор - Дерик Бейли Дополнительная информация Thorax Простейшее приложение Встраивание дочерних представлений Помощники представлений Помощник collection Настраиваемые атрибуты HTML-данных Ресурсы, посвященные Thorax Выводы Глава 7. Типичные проблемы и пути их решения Работа с вложенными представлениями Проблема Решение 1 Решение 2 Решение 3 Решение 4 Управление моделями во вложенных представлениях Проблема Решение Отображение родительского представления из дочернего представления Проблема Решение Удаление иерархий представлений Проблема Решение Отображение иерархий представлений Проблема Решение Работа с вложенными моделями и коллекциями Проблема Решение Улучшенная валидация свойств моделей Проблема Решение Backbone. validateAll Backbone. Validation Классы для валидации отдельных форм Предотвращение конфликтов при использовании нескольких версий Backbone Проблема Решение Создание иерархий моделей и представлений Проблема Решение Вызов переопределенных методов Backbone-Super Агрегаторы событий и посредники Проблема Решение Агрегатор событий Посредник Сходства и различия Когда и какие отношения использовать Совместное использование агрегатора событий и посредника Язык паттернов: семантика Глава 8. Модульная разработка Организация модулей с помощью RequireJS и AMD Проблемы поддержки множества файлов сценариев Для чего требуется улучшать управление зависимостями Асинхронное определение модулей (AMD) Создание AMD-модулей с помощью RequireJS Начало работы с RequireJS Пример совместного использования Require. js и Backbone Внешнее хранение шаблонов с помощью библиотеки RequireJS и плагина Text Оптимизация Backbone-приложений для рабочей среды с помощью оптимизатора RequireJS Заключение Глава 9. Упражнение 3: ваше первое модульное приложение на Backbone и RequireJS Введение Разметка Конфигурационные параметры Создание модулей из моделей, представлений и коллекций Загрузка модулей с использованием маршрутов Конфигурация модуля в формате JSON Маршрутизатор загрузчика модулей Обработка pushState с использованием NodeJS Пакеты активов - альтернатива управлению зависимостями Глава 10. Пагинация запросов и коллекций Backbone.js Backbone.Paginator Реальные примеры Paginator.requestPager Вспомогательные методы Paginator.clientPager Вспомогательные методы Замечания о реализации Плагины Инициализация Стили Заключение Глава 11. Backbone Boilerplate и Grunt-BBB Начало работы Создание нового проекта index.html config.js main.js app.js Создание модулей Backbone Boilerplate router.js Другие полезные инструменты и проекты Yeoman Backbone DevTools Заключение Глава 12. Backbone и jQuery Mobile Разработка мобильных приложений с помощью jQuery Mobile Принцип прогрессивного улучшения виджетов в jQMobile Система навигации jQuery Mobile Настройка Backbone-приложения для работы с jQuery Mobile Рабочий цикл приложения на основе Backbone и jQueryMobile Переход на страницу с фиксированным представлением, наследование класса BasicView Управление шаблонами мобильных страниц Управление DOM и методом $.mobile.changePage Использование сложных методов jQM в Backbone Динамическое изменение DOM Перехват сообщений jQuery Mobile Производительность Эффективная поддержка многоплатформенности Глава 13. Jasmine Разработка через реализацию поведения Тестовые наборы, спецификации и агенты beforeEach() и afterEach() Общая область видимости Подготовка к тестированию Разработка через тестирование с использованием Backbone Модели Коллекции Представления Тестирование представлений Упражнение Дополнительная литература Заключение Глава 14. QUnit Настройка Пример HTML-кода с QUnit-совместимой разметкой Операторы контроля Простой тестовый вариант с использованием функции test Сравнение фактического и ожидаемого результата функции Структурирование операторов контроля Простейшие модули QUnit Использование методов setup() и teardown() Создание и очистка объектов с помощью методов setup() и teardown() Примеры использования операторов контроля Фикстуры Пример с фикстурами Асинхронный код Глава 15. SinonJS Что такое SinonJS? Базовые агенты Наблюдение за существующими функциями Тестовый интерфейс Заглушки и мок-объекты Заглушки Мок-объекты Упражнение Модели Коллекции Представления Приложение Дополнительные источники информации Глава 16. Заключение Приложение А. Темы для дальнейшего изучения Приложение Б. Источники