Практика PHP для начинающих. Урок 16. Класс Service Container

preview_player
Показать описание
В этом видео мы напишем класс Service Container. Задача этого класса заключается в том, чтобы хранить сервисы или, если говорить проще, экземпляры других классов. Но Service Container не просто выступает в роли хранилища. По запросу из него всегда можно получить нужный объект, который хранится в контейнере. Это очень удобно, поскольку достаточно всего лишь запросить нужный объект и Service Container его предоставит. Нам не нужно ни создавать этот объект, ни задумываться о параметрах, которые необходимо в него передать. Все это делается единожды, при помещении в контейнер нужной зависимости. После этого в любом месте нашего приложения мы можем запросить объект из контейнера.

Данная серия уроков предназначена для начинающих программистов на PHP и веб-разработчиков. Цель предлагаемых уроков - научить писать правильный и красивый код, а также показать основные методики написания структурированного кода. В этих уроках будут затронуты такие темы как:
- Как отделить логику от представления.
- Как избежать дублирования кода.
- Что такое Router (маршрутизатор) и как написать собственный класс Router.
- Как работать с базой данных (БД), используя PDO и как написать свой класс для работы с БД.
- Что такое Service Container и как написать свой Service Container.
- Что такое Middleware и как написать свой Middleware.
- и т.д.

Рекомендации по теме
Комментарии
Автор

Большое Спасибо 👍. Перед изучением Laravel этот видеокурс обязателен к просмотру. Без понимания приминимости на практике, чистая теория часто просто вылетает из головы. А у Андрея очень хорошо получается ответить на два вопроса: "Как? А главное - Зачем?".

screomyscreomy
Автор

Я правильно понимаю, что за счет статика у нас не происходит каждый раз новое подключение к базе?

dimakarnak
Автор

Модели и миграции планируете в этом проекте реализовать ? За видео спасибо !

niks
Автор

Спасибо за урок, но честно говоря не очень понял зачем это все нужно, и какие преимущества это дает по сравнению с использованием global, видь если я правильно понял, то для того что бы просто получить экземпляр класса в одном из файлов, в самом классе нужно обязательно реализовать сингелтон, иначе мы каждый раз будем создавать разные экземпляры

akiratanaka
Автор

Доброго времени суток) Подскажите пожалуйста, почему при распечатке объекта подключения к базе данных, в строке:


у меня значение NULL, а у вас написано: неинициализированный ПДОстэйтмен. Это из за версии php и я зря волнуюсь?))
P.S. Спасибо за классный урок))

Ezio-drunidx