Service container в Laravel - архитектурная концепция и инъекции зависимостей в Ларавел

В сегодняшнем уроке мы затронем важную и интересную тему это service container (ларавел сервис контейнер). Это архитектурная концепция в Laravel, её важно знать и понимать, но для многих новичков она может являться темным лесом. #serviceconteiner#laravel#cutcode ❗️❗️❗️как делать сложные сайты на laravel? Это просто с cutcode! Поддерживай мой проект - Угостить меня кофе - 🤖🤖🤖Мой помощник Тэйлор готов выдать тебе подарок. Забирать тут - --------------------------------------------------------------------------------- ⏰ Таймкоды: 00:00 Введение 00:27 Обзор документации по Laravel 02:00 Небольшая история как я изучал service container много лет назад 02:58 Пример с инъекцией класса 04:48 Что происходит при указании типа аргумента 06:01 Пример с инъекцией интерфейса Друзья всех приветствую на канале Cutcode! В сегодняшнем уроке мы затронем важную и интересную тему это service container (ларавел сервис контейнер). Это архитектурная концепция в Laravel, её важно знать и понимать, но для многих новичков она может являться темным лесом. В документации по Laravel о ней подробно расписано, но здесь много сложного непонятного текста. Поэтому мы сейчас попробуем ее осветить на примере простыми словами, чтобы все сразу стало понятным и в будущем когда вы услышите такую фразу как сервис контейнер сразу понимали о чем речь и как это все работает, вся эта магия. В документации мы сразу видим простой пример видим контроллера service container работают у нас как описано в документации в контроллерах, в event листнерах, мидлварах и еще кое-где. Но скажу вам сразу в 90 процентов случаев, а то и больше применяется это только в контроллерах. Поэтому мы сегодняшнем уроке будем как раз рассматривать контроллеры. Возвращаемся к документации где а нам показан простой пример. В примере контроллере user есть метод construct. Это так же может быть и любой другой метод в этом контроллере. Ну и в любых других контроллерах Laravel. Мы значит передаем аргумент функции users с указанием типом класс users репозитории. При этом как раз в Laravel происходит это магия service container и у нас создается экземпляр класса user репозитории с которой мы уже можем работать внутри этого метода. Мы также можем передавать любой свой класс и можем передавать и делать инъекции нескольких классов, указывая их через запятую. Немного отходя от документации скажу что когда я только начинал изучение Laravel а это была версия 6 или даже 5 и по умолчанию при генерации контроллера через командную строку был метод index по умолчанию и у него было как раз инъекция фасада request. И я думал что это по умолчанию доступны нам только фасад request, либо форм request либо какие-либо параметры из route, а уже позже углубился в концепцию Laravel и понял как это интересно все работает. Помимо инъекции класса мы также можем делать инъекцию интерфейсов и позже их биндить какому-либо классу который наследует этот интерфейс. Но об этом мы уже поговорим сейчас более детально в примерах, чтобы стало более понятно, когда и зачем такой подход нужно применять. Давайте откроем код и пройдемся по живым примерам. --------------------------------------------------------------------------------- 📹 делитесь этим видео с друзьями: 🔔 подпишитесь на YouTube-канал: 📼 Курс по Laravel с нуля: Service conteiner в Laravel - архитектурная концепция и инъекции в Ларавел --------------------------------------------------------------------------------- 🔗 наш сайт: 📷 наш instagram: 📱 Наш telegram-канал:
Back to Top