Zend Framework. Разработка веб-приложений на PHP
Викрам Васвани
Следуя искусству и духу PHP, Zend Framework основывается на простоте, лучших приемах объектно-ориентированного программирования, дружественной к корпорациям лицензионной политике и тщательно протестированном гибком коде. Zend Framework нацелен на разработку более безопасных, надежных и современных Web 2.0-приложений и служб и на использование общедоступных API.
Из этой книги, автор которой хорошо разбирается в вопросе и прекрасно владеет техническим языком, вы узнаете, каким образом Zend Framework достигает поставленных целей. Здесь вы найдете подробные и понятные объяснения, а также законченные примеры, и мы надеемся, что впоследствии вы станете с удовольствием разрабатывать собственные приложения с помощью инструмента, ставшего фактическим стандартом - Zend Framework.
Издательство: Питер, 2012 г.
ISBN 978-5-459-00826-5, 978-0071639392
Количество страниц: 432.
Содержание книги «Zend Framework. Разработка веб-приложений на PHP»:
- 15 Об авторе
- 15 О научном редакторе
- 16 Предисловие
- 18 Благодарности
- 20 Вступление
- 21 Кому адресована эта книга
- 21 О чем можно узнать из этой книги
- 22 Соглашения
- 23 Сайт книги
- 24 Глава 1. Введение в Zend Framework
- 25 Обзор
- 27 Возможности
- 27 Соответствие стандартам и лучшие приемы программирования
- 27 Многократное использование
- 27 Интернационализация
- 28 Открытый исходный код
- 28 Поддержка со стороны сообщества
- 28 Уникальные преимущества
- 29 Слабая связанность
- 29 Быстрая смена релизов
- 29 Политика модульного тестирования
- 29 Средства генерации кода
- 30 Доверие рынка
- 30 Возможность взаимодействия со сторонними приложениями
- 30 Варианты коммерческой поддержки
- 31 Исчерпывающая документация
- 31 Среда для приложений
- 32 Установка Zend Framework
- 34 Упражнение 1.1 Создание нового проекта
- 35 Выяснение требований к приложению
- 35 Создание каталога приложения
- 36 Создание каркаса приложения
- 37 Добавление библиотек Zend Framework
- 37 Определение настроек виртуальных хостов
- 39 Использование средства командной строки
- 41 Выводы
- 42 Глава 2. Работа с моделями, представлениями, контроллерами и маршрутами
- 42 Базовые принципы
- 43 Модели
- 44 Представления
- 46 Контроллеры
- 47 Модули
- 47 Маршруты
- 48 Макеты
- 49 Взаимодействие между компонентами
- 51 Устройство стандартной главной страницы
- 53 Модульная структура каталогов
- 55 Упражнение 2.1 Использование модульной структуры каталогов
- 56 Создание модуля по умолчанию (default)
- 56 Обновление конфигурационного файла приложения
- 56 Основные макеты и пользовательские маршруты
- 57 Обновление главной страницы приложения
- 58 Установка основного макета
- 60 Использование пользовательского маршрута
- 61 Упражнение 2.2 Обработка статического содержимого
- 62 Определение пользовательских маршрутов
- 62 Определение контроллера
- 63 Определение представления
- 65 Обновление основного макета
- 66 Выводы
- 42 Базовые принципы
- 68 Глава 3. Работа с формами
- 69 Основы работы с формами
- 73 Создание форм и элементов формы
- 75 Работа с элементами форм
- 87 Установка обязательных значений и значений по умолчанию
- 91 Фильтрация и валидация входных данных форм
- 91 Использование фильтров ввода
- 95 Использование валидаторов ввода
- 101 Использование цепочек валидаторов и фильтров
- 103 Получение и обработка данных форм
- 104 Упражнение 3.1 Создание формы обратной связи
- 104 Определение формы
- 107 Использование пользовательского пространства имен
- 107 Определение пользовательского маршрута
- 108 Определение контроллеров и представлений
- 110 Обновление основного макета
- 112 Настройка внешнего вида формы
- 113 Использование пользовательских сообщений об ошибках
- 115 Использование групп отображения
- 116 Использование декораторов
- 120 Выводы
- 121 Глава 4. Работа с моделями
- 122 Модели
- 124 Паттерны для моделей
- 125 Границы модели
- 126 Установка Doctrine
- 128 Упражнение 4.1 Создание и интеграция моделей Doctrine
- 128 Инициализация базы данных приложения
- 133 Генерация моделей Doctrine
- 134 Установка отношений между моделями
- 135 Автозагрузка Doctrine
- 137 Работа с моделями Doctrine
- 137 Получение записей
- 138 Использование фильтров
- 138 Группирование и упорядочивание результатов
- 138 Объединение таблиц
- 139 Добавление, обновление и удаление записей
- 141 Упражнение 4.2 Получение записей из базы данных
- 141 Создание нового модуля
- 141 Определение пользовательского маршрута
- 141 Определение контроллера
- 143 Определение представления
- 146 Выводы
- 122 Модели
- 148 Глава 5. Работа с операциями CRUD
- 149 Упражнение 5.1 Создание записей в базе данных
- 149 Определение формы
- 154 Определение контроллеров и представлений
- 157 Работа с административными действиями
- 158 Структура
- 159 Маршрутизация
- 160 Макет
- 160 Упражнение 5.2 Вывод списка, удаление и обновление записей базы данных
- 161 Установка административного макета
- 162 Определение пользовательских маршрутов
- 163 Определение действия и представления для вывода списка
- 166 Определение действия для удаления
- 167 Определение формы для обновления
- 170 Обработка ввода дат
- 171 Определение действия и представления для обновления
- 175 Обновление действия для отображения
- 176 Добавление аутентификации пользователей
- 178 Упражнение 5.3 Создание системы входа/выхода
- 178 Определение пользовательских маршрутов
- 178 Определение формы входа
- 179 Определение адаптера аутентификации
- 182 Определение действия и представления для входа
- 184 Определение действия для выхода
- 184 Защита административных действий
- 185 Обновление основного макета
- 187 Выводы
- 149 Упражнение 5.1 Создание записей в базе данных
- 188 Глава 6. Индексация, поиск и форматирование данных
- 189 Упражнение 6.1 Поиск и фильтрация записей базы данных
- 189 Определение формы поиска
- 191 Определение контроллера и представления
- 193 Обновление основного макета
- 195 Добавление полнотекстового поиска
- 196 Индексация данных
- 198 Поиск данных
- 199 Упражнение 6.2 Создание механизма полнотекстового поиска
- 199 Определение расположения индекса
- 199 Определение пользовательских маршрутов
- 200 Определение действия и представления для индексации
- 201 Обновление сводного представления
- 202 Обновление формы поиска
- 203 Обновление действия и представления для поиска
- 206 Обработка нескольких типов вывода
- 207 Упражнение 6.3 Вывод результатов поиска в формате XML
- 208 Включение контекста XML
- 208 Определение представления XML
- 210 Выводы
- 189 Упражнение 6.1 Поиск и фильтрация записей базы данных
- 211 Глава 7. Разбиение на страницы, сортировка и загрузка данных на сервер
- 212 Упражнение 7.1 Разбиение на страницы и сортировка записей базы данных
- 213 Добавление номеров страниц к маршрутам
- 213 Обновление контроллера и представления для главной страницы
- 216 Добавление критериев сортировки к маршрутам
- 216 Обновление контроллера и представления
- 220 Обработка загружаемых на сервер файлов
- 224 Упражнение 7.2 Добавление возможности загрузки изображений
- 224 Определение целевого каталога для загруженных файлов
- 225 Обновление определения формы
- 226 Обновление действия для создания
- 228 Обновление действия и представления для отображения
- 230 Обновление действия для удаления
- 233 Работа с конфигурационными данными
- 233 Чтение конфигурационных файлов
- 234 Запись конфигурационных файлов
- 238 Упражнение 7.3 Настройка параметров приложения
- 238 Определение формы настройки
- 240 Определение конфигурационного файла
- 240 Определение пользовательских маршрутов
- 241 Определение контроллера и представления
- 243 Обновление основного макета
- 245 Использование конфигурационных данных
- 248 Выводы
- 212 Упражнение 7.1 Разбиение на страницы и сортировка записей базы данных
- 250 Глава 8. Журналирование и отладка исключений
- 251 Исключения
- 254 Стандартный процесс обработки ошибок
- 257 Использование пользовательских классов исключений
- 259 Управление видимостью исключений
- 260 Упражнение 8.1 Создание пользовательской страницы с сообщением об ошибке
- 262 Журналирование данных
- 263 Запись сообщений журнала
- 267 Добавление данных в сообщения журнала
- 268 Форматирование сообщений журнала
- 271 Упражнение 8.2 Журналирование исключений приложения
- 272 Определение расположения журнала
- 272 Определение класса записи в базу данных
- 273 Обновление контроллера ошибок
- 277 Выводы
- 279 Глава 9. Локализация приложений
- 280 Локализация и локали
- 282 Установка локали приложения
- 284 Локализация чисел
- 286 Локализация дат и времени
- 289 Локализация валют
- 291 Локализация единиц измерения
- 294 Локализация строк
- 296 Работа с адаптерами и источниками данных
- 298 Использование локали приложения
- 299 Использование вспомогательного класса представления для перевода
- 300 Упражнение 9.1 Локализация демонстрационного приложения
- 300 Установка локали приложения
- 301 Локализация чисел и дат
- 304 Определение строк, требующих перевода
- 307 Создание источников перевода
- 308 Регистрация объекта перевода
- 312 Поддержка ручного выбора локали
- 313 Обновление основного макета
- 315 Выводы
- 280 Локализация и локали
- 317 Глава 10. Работа с новостными лентами и веб-сервисами
- 318 Работа с новостными лентами
- 318 Форматы новостных лент
- 320 Получение новостных лент
- 322 Создание новостных лент
- 325 Доступ к веб-сервисам
- 325 Веб-сервисы
- 327 Использование веб-сервисов
- 333 Упражнение 10.1 Интеграция с Twitter и добавление результатов поиска по блогам
- 333 Определение пользовательских маршрутов
- 334 Определение контроллера и представления
- 336 Обновление основного макета
- 337 Создание веб-сервисов, основанных на REST
- 338 Маршруты REST
- 339 Упражнение 10.2 Реализация веб-сервисов, основанных на REST
- 339 Создание нового модуля
- 340 Определение контроллера
- 341 Определение действий GET
- 344 Определение действия POST
- 344 Инициализация маршрутов REST
- 347 Выводы
- 318 Работа с новостными лентами
- 349 Глава 11. Работа с элементами пользовательского интерфейса
- 350 Работа с навигационными структурами
- 350 Страницы и контейнеры
- 355 Формирование навигационных элементов
- 355 Меню
- 357 Навигационные цепочки
- 358 Элементы Link
- 358 Карты сайтов
- 359 Упражнение 11.1 Добавление навигационного меню
- 359 Определение навигационных страниц и контейнеров
- 360 Регистрация объекта навигации
- 361 Создание вспомогательного класса представления для навигации
- 363 Использование вспомогательного класса представления Menu
- 364 Работа c Dojo Toolkit
- 365 Работа с Dojo Data
- 366 Использование вспомогательных классов представлений Dojo
- 369 Использование элементов формы Dojo
- 372 Упражнение 11.2 Добавление элемента Dojo с автоматическим дополнением
- 372 Обновление формы обратной связи
- 373 Инициализация вспомогательного класса представления Dojo
- 374 Обновление основного макета
- 375 Обновление контроллера
- 376 Упражнение 11.3 Добавление календаря YUI
- 377 Обновление формы
- 378 Обновление основного макета
- 379 Обновление контроллера
- 381 Обновление представления
- 382 Выводы
- 350 Работа с навигационными структурами
- 384 Глава 12. Оптимизация производительности
- 384 Оценка производительности
- 385 Оценка производительности
- 387 Профилирование кода
- 390 Профилирование запросов
- 394 Кэширование данных
- 395 Операции с кэшем
- 397 Frontend- и backend-компоненты кэша
- 400 Использование менеджера кэша
- 401 Кэширование запросов Doctrine
- 403 Оптимизация кода приложения
- 404 Настройка запросов
- 407 Отложенная загрузка
- 407 Упражнение 12.1 Увеличение производительности приложения
- 408 Настройка кэша приложения
- 408 Кэширование строк перевода
- 409 Кэширование результатов запросов
- 411 Кэширование лент Twitter и блогов
- 413 Выводы
- 384 Оценка производительности
- 415 Приложение А. Установка и настройка необходимого программного обеспечения
- 416 Получение программного обеспечения
- 417 Установка и настройка программного обеспечения
- 418 Установка в UNIX
- 422 Установка в Windows
- 427 Проверка программного обеспечения
- 427 Проверка MySQL
- 428 Проверка PHP
- 429 Установка пароля суперпользователя MySQL
- 429 Выводы
Инструкция как скачать книгу Викрам Васвани: Zend Framework. Разработка веб-приложений на PHP в форматах DjVu, PDF, DOC или fb2 совершенно бесплатно.