Silver 03 декабря 2019

Понятный видеокурс о Design Patterns на примере языка PHP

Паттерны проектирования являются необходимым базисом для программиста. Мы подобрали видеокурс, который позволит погрузиться в тему.
Понятный видеокурс о Design Patterns на примере языка PHP

GOF

Это видео не входит в основной цикл. В нём даётся краткое описание 23-х ключевых паттернов, описанных в книге «Приёмы объектно-ориентированного проектирования. Паттерны проектирования», авторов которой прозвали "Gang of four". Если вы уже изучали паттерны хотя бы поверхностно – можете смело пропускать урок: в нем нет ни практики, ни детального разбора.

Введение в Design Patterns

Первое видео из цикла объясняет, что такое паттерны проектирования, развенчивает основные мифы и максимально просто доносит главную идею.

Добавим, что паттерны разделяют еще на 3 основных группы по типу выполняемых задач:

Читайте подробнее в наших статьях по ссылкам.

Singletone, Multione container

В этом видео на примерах популярных фреймворков yii2 и symfony вы познакомитесь с распространённым пораждающим паттерном Singleton, который гарантирует наличие только единственного экземпляра класса, а также частного случая паттерна Container Multione container, объединяющего в себе несколько "одиночек".

В качестве альтернативы примера из видео можно использовать Multione pool, который хранит в себе набор уже инициализированных "одиночек" и выполняет похожую задачу.

Dependency Injection

Третье видео – хорошая демонстрация внедрения зависимостей. Данный паттерн используется практически во всей современной разработке и часто вызывает недоумение у начинающих. Автор показывает использование паттерна и его более продвинутой версии DI Container на примерах yii2 и laravel.

С минусами, о которых говорит автор, трудно согласиться. DI стала необходимой частью любой серьезной разработки в первую очередь благодаря упрощению тестирования. Хотите вы или нет, но научиться читать код с DI придется, как бы трудно ни было в начале.

Observable и Observer

Обзор базовых паттернов событийно-ориентированного программирования, задача которых – генерировать и получать события. В качестве примера демонстрируется их использование в популярной и достаточно простой для понимания архитектуре MVC на базе всё того же yii2.

Хотели бы что-то добавить? Пишите в комментариях ;)

Комментарии

ВАКАНСИИ

Добавить вакансию
Разработчик C++
Москва, по итогам собеседования

ЛУЧШИЕ СТАТЬИ ПО ТЕМЕ