Size: a a a

2021 September 15

А

Антон in Laravel Pro
Нет, не спец папки. Спец папки у сралавеля.
источник

y

yu2ry in Laravel Pro
в ларе такое можно провернуть?
источник

y

yu2ry in Laravel Pro
с помощью какой нибудь либы
источник

А

Антон in Laravel Pro
источник

А

Антон in Laravel Pro
В симфони контейнер компилируемый, поэтому они могут себе позволить делать оч сложные штуки, все равно контейнер сдампится и все следующие запросы будут работать с собранными зависимостями. А в ларавеле на каждый хит рефлексия
источник

y

yu2ry in Laravel Pro
я что - то не пойму зачем там
https://github.com/symfony/dependency-injection/blob/5.3/ServiceLocator.php

у них и DI контейнер и сервислокатор?
источник

y

yu2ry in Laravel Pro
источник

МИ

Михаил Игнатов... in Laravel Pro
а ну это и есть DI, верно?)
источник

А

Антон in Laravel Pro
У них сервис-локатор используется в ограниченных случаях. Например, у тебя есть класс, который использует пачку других классов для каких-то действий: валидатор с его правилами, мессенджер с его хэндлерами. Было бы накладно создавать на каждый запрос все объекты (а если их 20, 30, 100?). Поэтому они позволяют заинжектить в такие сервисы специальный сервис-локатор, в котором будут ТОЛЬКО объекты определенного типа. Это увеличивает производительность + контейнер от psr-11, что позволяет юзать сервис и без симфони.
источник

y

yu2ry in Laravel Pro
Ну в ларе фасады так же работают)
источник

y

yu2ry in Laravel Pro
+\-
источник

А

Антон in Laravel Pro
Нет
источник

y

yu2ry in Laravel Pro
Там тоже внутри локатор, но больше напоминает пул сингелтонов
источник

А

Антон in Laravel Pro
Ну то есть юзают они оба сервис-локатор, но назначение подходов разное: у симфони это крайний шаг, чтобы сэкономить тебе на создании объектов, а у лары так, потому что Тейлор не умеет в дизайн и не стестняется обмазывать своим контейнером весь фреймворк.
источник

А

Антон in Laravel Pro
Почему крайний шаг, потому что если не запросить сервис-локатор намеренно, ты его не получишь: симфони инлайнить любые типы контейнеров, поэтому ты не сможешь в своем сервисе их получить
источник

А

Антон in Laravel Pro
Ну тип, public function __construct(ContainerInterface $container) выкинет ошибку.
источник

А

Антон in Laravel Pro
Притом, что контейнер у лары полная шляпа. Они даже контекстный биндинг методов сделать не могут
источник

Т

Тот самый in Laravel Pro
Всем привет, как лучше сделать realtime положение без использования  https://pusher.com/ и тому подобного?
источник

DS

Dima S in Laravel Pro
Node.js
источник

Т

Тот самый in Laravel Pro
Пример есть или статейки?
источник