Название: PHP: объекты, шаблоны и методики программирования, 3-е изд.
Автор: Зандстра Мэтт
Издательство: Вильямс
Год: 2011
Страниц: 528
Формат: DJVU
Размер: 8,33 МБ
ISBN: 978-5-8459-1689-1
Качество: Отличное
Для сайта:
Vuzer.info
За последние десять лет PHP буквально охватила объектно-ориентированная революция, причем это относится как к самим средствам языка, так и к разработчикам, использующим эти средства, и к приложениям, которые они создают. Теперь основной акцент делается на объектах и объектно-ориентированном подходе к проектированию. Существует еще один момент, связанный с этим и также прочно укоренившийся в современные методики разработки объектно-ориентированных приложений. Речь идет об использовании средств и методик, благодаря которым достигается успешное выполнение проекта, осуществляется эффективное управление группами разработчиков и повышается качество кода.
Книга начинается с обзора объектно-ориентированных возможностей PHP, в который включены важные темы, наподобие определения класса, создания объектов, наследовании, инкапсуляции методов и свойств. Вы изучите также и дополнительные темы, такие как статические методы и свойства, абстрактные классы, обработка исключений, клонирование объектов, пространства имен, механизм замыканий и многое другое.
Содержание:
Об авторе
О техническом рецензенте
Благодарности
Предисловие к третьему изданию
От издательства
Часть I. Введение
Глава 1. РНР: проектирование и сопровождение систем
Проблема
РНР и другие языки
Об этой книге
Резюме
Часть II. Объекты
Глава 2. РНР и объекты
Неожиданный успех РНР-объектов
Взгляд в будущее
Сторонники и противники: дебаты об объектах
Резюме
Глава 3. Основные сведения об объектах
Классы и объекты
Определение свойств в классе
Работа с методами
Аргументы и типы
Наследование
Public, Private и Protected: управление доступом к классам
Резюме
Глава 4. Дополнительные возможности
Статические методы и свойства
Постоянные свойства
Абстрактные классы
Интерфейсы
Позднее статическое связывание: ключевое слово static
Обработка ошибок
Завершенные классы и методы
Работа с методами-перехватчиками
Определение методов деструктора
Копирование объектов с помощью метода
_clone ()
Определение строковых значений для объектов
Функции обратного вызова, анонимные функции и механизм замыканий
Резюме
Глава 5. Средства для работы с объектами
РНР и пакеты
Функции для работы с классами и объектами
Интерфейс Reflection API
Резюме
Глава 6. Объекты и методология проектирования
Определение программного проекта
Объектно-ориентированное и процедурное программирование
Выбор классов
Полиморфизм
Инкапсуляция
Забудьте, как это делается
Четыре столпа
UML
Резюме
Часть III. Шаблоны
Глава 7. Что такое шаблоны проектирования и зачем они нужны
Что такое шаблоны проектирования
Обзор шаблонов проектирования
Формат "Банды четырех"
Зачем используются шаблоны проектирования
f
РНР и шаблоны проектирования
Резюме
Глава 8. Некоторые принципы шаблонов
Открытие шаблонов
Композиция и наследование
Разделение
Программируйте на основе интерфейса, а не его реализации
Меняющаяся концепция
Проблемы применения шаблонов
Шаблоны
Резюме
Глава 9. Генерация объектов
Генерация объектов: задачи и решения
Шаблон Singleton
Шаблон Factory Method
Шаблон Abstract Factory
Шаблон Prototype
Но это обман!
Резюме
Глава 10. Шаблоны для программирования гибких объектов
Как структурировать классы, чтобы достичь гибкости
Шаблон Composite
Шаблон Decorator
Шаблон Facade
Резюме
Глава 11. Выполнение задач и представление результатов
Шаблон Interpreter
Шаблон Strategy
Шаблон Observer
Шаблон Visitor
Шаблон Command
Резюме
Глава 12. Шаблоны корпоративных приложений
Обзор архитектуры
Небольшое отступление перед началом
Уровень представления данных
Уровень логики приложения
Глава 13. Шаблоны баз данных
Уровень данных
Шаблон Data Mapper
Шаблон Identity Map
Шаблон Unit of Work
Шаблон Lazy Load
Шаблон Domain Object Factory
Шаблон Identity Object
Результаты
Шаблоны Selection Factory и Update Factory
Что теперь осталось от Data Mapper
Резюме
Часть IV. Практика
Глава 14. Хорошие и плохие методы работы
Что осталось за рамками кода
Изобретаем велосипед
Хорошая игра
Как дать коду крылья
Документирование
Тестирование
Непрерывная интеграция
Резюме
Глава 15. Введение в PEAR и Pyrus
Что такое PEAR
Знакомьтесь - Pyrus
Инсталляция пакета с помощью PEAR
Каналы PEAR
Использование пакета PEAR
Обработка ошибок PEAR
Создание собственного пакета PEAR
Резюме
Глава 16. Генерация документации с помощью phpDocumentor
Зачем нужно что-то документировать
Инсталляция
Генерация документации
Комментарии
DocBlock
Документирование классов
Документация на уровне файла
Документирование свойств
Документирование методов
Создание ссылок в документации
Резюме
Глава 17. Контроль версий с помощью Subversion
Для чего нужен контроль версий
Установка Subversion
Конфигурирование хранилища Subversion
Начало проекта
Обновление и фиксация изменений
Добавление и удаление файлов и каталогов
Разметка и экспортирование выпуска
Разветвление проекта
Резюме
Глава 18. Тестирование с помощью PHPUnit
Функциональные тесты и модульное тестирование
Ручное тестирование
Знакомство с PHPUnit
Написание тестов веб-приложений
Знакомство с Selenium
Несколько предупреждений
Резюме
Глава 19. Автоматическое построение с помощью Phing
Что такое Phing
Получение и инсталляция Phing
Создание документа построения
Резюме
Глава 20. Непрерывная интеграция
Что же такое непрерывная интеграция
CruiseControl и phpUndcrControl
Резюме
Часть V. Заключение
Глава 21. Объекты, шаблоны, практика
Объекты
Шаблоны
Практика
Резюме
Часть VI. Приложения
Приложение А. Дополнительные источники информации
Книги
Статьи в Интернете
Сайты
Приложение Б. Простой синтаксический анализатор
Сканер
Объект Parser
Предметный указатель