Опубликовано 1 комментарий

Шаблоны проектирования в PHP

шаблоны проектирования
шаблоны проектирования

Погружение в шаблоны проектирования даёт понимание того, как правильно применять лучшие практики для моделирования предметной области в компоненты языка программирования. Также оно (изучение) помогает разобраться почему реализованы те или иные части популярных фреймворков.

Шаблоны (иногда их называют паттернами) обычно не привязаны к языку программирования, потому что предназначены для решения типовой задачи. Узнав как создается шаблон Адаптер или Декоратор вы можете попробовать его реализовать на языке объектно-ориентированном языке программирования, который знаете. Знание базовых шаблонов также помогает разработчикам общаться в команде с коллегами — не тратиться доп. время на разъяснение концепции решения той или иной задачи.

Мы рассматриваем шаблоны проектирования в PHP на курсах PHP. В сети есть много сайтов, охватывающих эту тему. Из литературы можно посоветовать:

Шаблоны проектирования: книги

  1. PHP. Объекты, шаблоны и методики программирования. Мэтт Зандстра
  2. Паттерны проектирования. Эрик Фримен, Элизабет Фримен
  3. Приемы объектно-ориентированного проектирования. Паттерны проектирования. Эрих Гамма, Ричард Хелм и др.
  4. Шаблоны реализации корпоративных приложений. Кент Бек
  5. Применение UML 2.0 и шаблонов проектирования. Введение в объектно-ориентированный анализ, проектирование и итеративную разработку. Крэг Ларман

Книга Зандстры выдержала несколько изданий, достаточно простым языком разъясняет сложные пример (кому вначале покажется сложным, посмотрите последние две книги из списка 🙂 ). Кроме шаблонов проектирования рассматриваются хорошие практики разработки программного обеспечения и все это применимо к PHP.

Книга Фрименов, как и все книги из серии Head&First призваны навести порядок в голове у всех начинающих, в данном случае — работать с шаблонами проектирования. Содержит очень много примеров на Java (если знаком PHP — можно читать).

На книгу Бека часто ссылается Зандстра. Но «Шаблоны реализации корпоративных приложений» лучше читать после просмотра других книг списка.

Шаблоны проектирования: фреймворки

Для того, чтобы хорошо разобраться в шаблонах, нужно знакомиться с кодом передовых разработок. Например, знакомимся с шаблоном Наблюдатель (Observer). Если параллельно рассматриваем Zend Framework 2, то обнаруживаем компонент EventManager, который реализует шаблон Наблюдатель. Это касается всех передовых фреймворков, которые на слуху.

Примечание: перед началом знакомства с шаблонами, можно посмотреть язык визуального моделирования UML. UML даёт возможность читать и создавать диаграммы, описывающие шаблоны проектирования (на самом деле, для описания взаимодействия между объектами, состояний объектов используются разные комбинации базовых фигур UML). Если есть желание создать свою UML-диаграмму не на листке бумаги, можно воспользоваться одним из онлайн-сервисов или стационарной программой. Обратите внимание на DIA она медленно, но уверенно развивается. У неё есть и неудобные моменты с точки зрения удобства использования, но она меня очень выручила, когда однажды искал способ автоматической генерации PHP-кода из диаграммы (есть плагин).

1 комментарий к “Шаблоны проектирования в PHP

  1. […] с классами в PHP. Иногда на курсы PHP приходят изучать шаблоны проектирования или фреймворки, в этом случае обязательно […]

Добавить комментарий