Логотип LiveLibbetaК основной версии

Это бета-версия LiveLib. Сейчас доступна часть функций, остальные из основной версии будут добавляться постепенно.

Рецензия на книгу

PHP: объекты, шаблоны и методики программирования

Мэтт Зандстра

0

(0)

  • Аватар пользователя
    long399
    3 сентября 2023

    ООП и PHP

    Данную книгу я начал читать в отпуске, чтобы узнать для себя что-то новое о великолепном языке программирования - «PHP». Мэтт Зандстра рассказывает об особенностях и нововведениях, появившихся в PHP 5.3. И хотя на текущий момент самой свежей версией интерпретатора является PHP 8.2, это не отменяет полезности большей части информации, приведенной в книге.

    Книга рассчитана на средний уровень знаний языка, новичкам ее читать не рекомендую. Автор рассматривает средства языка, которые разработчик может применять, чтобы успешно писать приложения объектно-ориентированным подходом.

    Полезным для меня оказалось знакомство с рефлексией (reflection API) в PHP. Данный API предоставляет пользователю набор классов, который позволяет анализировать код (классы, методы, интерфейсы, параметры) прямо в процессе выполнения сценария. Это отличное средство, которое может не раз выручить разработчика, использующего в своем проекте сторонние библиотеки классов.

    Еще автор рассматривает основные принципы ООП (инкапсуляция, полиморфизм, наследование, агрегирование), примеры их использования при написании объектно-ориентированного кода. А уже дальше в книге на этих принципах строятся шаблоны проектирования.

    Автором были рассмотрены следующие шаблоны:
    1) одиночка;
    2) фабричный метод;
    3) абстрактная фабрика;
    4) прототип;
    5) композит;
    6) декоратор;
    7) фасад;
    8) интерпретатор;
    9) стратегия;
    10) наблюдатель;
    11) посетитель;
    12) команда;
    13) жадная загрузка.

    И это не полный список рассмотренных в книге шаблонов!

    Ранее я рассматривал многие из этих шаблонов при чтении книги « Паттерны проектирования ». Там они приводились на языке «Java». В данной книге они приводятся на «PHP», что для меня является только плюсом, ведь на работе я пользуюсь именно этим языком программирования.

    Однако данная книга будет полезна даже тем разработчикам, которые используют в своей деятельности другой язык программирования. Главное, чтобы язык поддерживал парадигму ООП.

    Еще мне понравилось, что помимо теории автор уделил немало внимания практической части. Им был рассмотрен ряд инструментов (программ и утилит), которые могут облегчить жизнь PHP-разработчику:
    1) «PEAR» и «Pyrus» - хранилища пакетов готового кода, который разработчик может применять в своих проектах, чтобы не изобретать велосипед;
    2) «phpDocumentor» - утилита для автоматической генерации документации к коду;
    3) «Subversion» - централизованная система управления версиями;
    4) «phpUnit» - пакет для простого создания тестов, на основе ряда готовых классов;
    5) «phing» - инструмент для построения проектов (на сегодняшний день не очень актуальное средство, ведь построение можно удобно выполнить, используя менеджер зависимостей «Composer»);
    6) «CruiseControl» - сервер непрерывной интеграции (мы используем на работе «Jenkins», аналогичное средство);

    Небольшими минусами являются опечатки, встречающиеся в книге и некоторые погрешности перевода.

    Моя оценка 4.5/5.

    like11 понравилось
    316

Комментарии 0

Ваш комментарий

, чтобы оставить комментарий.