Size: a a a

2020 April 09

M

Michael in Laravel Pro
Сервис-контейнер - это способ создавать классы не путём new Someclass , а func("Someclass")
Зачем это нужно ? Чтобы в процессе создания проанализировать аргументы, которые в конструкторе висят и сформировать нужный класс и подать его туда.
Вот и всё.
источник

i

invariance in Laravel Pro
Pavel Lint
Я не понимаю разницу, объясни
Выше два раза ответили
источник

i

invariance in Laravel Pro
Michael
Сервис-контейнер - это способ создавать классы не путём new Someclass , а func("Someclass")
Зачем это нужно ? Чтобы в процессе создания проанализировать аргументы, которые в конструкторе висят и сформировать нужный класс и подать его туда.
Вот и всё.
Грубо говоря - да)
источник

M

Michael in Laravel Pro
Фасад - это эмуляция статического класса. Чтобы не делать создание класса и вызов его метода, а можно было записать короче, через ::
источник

PL

Pavel Lint in Laravel Pro
invariance
Выше два раза ответили
Я прочитал определение и не вижу почему фасад в ларавель под него не подходит. Кидаться определениями не равно объяснять.
источник

i

invariance in Laravel Pro
Michael
Фасад - это эмуляция статического класса. Чтобы не делать создание класса и вызов его метода, а можно было записать короче, через ::
Не фасад, а статик прокси :D
источник

i

invariance in Laravel Pro
Ща совсем запутаешь
источник

PL

Pavel Lint in Laravel Pro
Кроме того странно что над проектом работает столько людей и они называют фасадом не фасад а что-то другое. Неужели все они такие глупые?
источник

i

invariance in Laravel Pro
Pavel Lint
Кроме того странно что над проектом работает столько людей и они называют фасадом не фасад а что-то другое. Неужели все они такие глупые?
Над проектом изначально один человек работал и решил назвать это фасадами, просто джаст фо фан, почему бы и нет
источник

i

invariance in Laravel Pro
И в доке явно указывается, что это не фасады, а статик прокси
источник

PL

Pavel Lint in Laravel Pro
Покажи где это в доке
источник

i

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

PL

Pavel Lint in Laravel Pro
Здесь не написано что фасады это не фасады, просто подобрали синоним.
источник

M

Michael in Laravel Pro
Pavel Lint
Я прочитал определение и не вижу почему фасад в ларавель под него не подходит. Кидаться определениями не равно объяснять.
это вещи разных масштабов просто. фасад в ларавель - это вызов метода класса. паттерн фасад - это делается один класс, который принимает зависимости из кучи других классов, и при вызове метода этого фасад-класса внутри вызываются методы кучи других классов. Это как Actions в Laravel
источник

PL

Pavel Lint in Laravel Pro
Michael
это вещи разных масштабов просто. фасад в ларавель - это вызов метода класса. паттерн фасад - это делается один класс, который принимает зависимости из кучи других классов, и при вызове метода этого фасад-класса внутри вызываются методы кучи других классов. Это как Actions в Laravel
Так фасады в ларе так и работают, при вызове их метода присходит мания и «вызываются кучи других классов»
источник

i

invariance in Laravel Pro
Pavel Lint
Здесь не написано что фасады это не фасады, просто подобрали синоним.
Это не синоним, а совершенно другой паттерн.
источник

i

invariance in Laravel Pro
Pavel Lint
Так фасады в ларе так и работают, при вызове их метода присходит мания и «вызываются кучи других классов»
Нет, абсолютно не так
источник

i

invariance in Laravel Pro
Фасад в ларавеле под собой конкретно один класс подразумевает. Фасад как паттерн проектирования - кучу классов\компонентов\чего угодно
источник

PL

Pavel Lint in Laravel Pro
invariance
Фасад в ларавеле под собой конкретно один класс подразумевает. Фасад как паттерн проектирования - кучу классов\компонентов\чего угодно
То есть разница только в этом? Один класс внутри или несколько?
источник

M

Michael in Laravel Pro
Pavel Lint
Так фасады в ларе так и работают, при вызове их метода присходит мания и «вызываются кучи других классов»
Это если ты сделаешь вызовы этой кучи методов. Если в этом методе ты просто напишешь return "1"; , то ларавеловский фасад не будет выражением паттерна фасад. И если сделаешь
$class = new SomeClass();  $class->makeAction();
то это вполне может быть паттерном фасад. Каждая селёдка - рыба, но не каждая рыба - селёдка.
источник