от симфони что-то.
Хз. TelegramMessageSender.php
Я всегда могу взять в services.yaml написать
Foo\Bar\TelegramMessageSender:
arguments:
foo: 1
И autowire этого класса всегда будет конструировать его теперь с foo=1?
Shared значит, что все сервисы, которые затребует шаред сервис в зависимостях - получат тот же инстанс. То что они не имплементят типичные методы синглтоны не значит, что нельзя их назвать синглтонами. Паттерны - это подходы и принципы, а не конкретные реализации
Паттерны это в первую очередь названия, чтобы при общении понимать друг друга. В терминологии Symfony DI есть понятие shared и нет понятия singletone. Если в твоей голове это одно и тоже это не значит что у остальных так же, как по мне явный мисьюз терминов, который ничего кроме путаницы у людей не порождает
Паттерны - это именованные подходы. Да в моих приложениях точкой доступа к сервисам является контейнер и он же гарантирует мне получение одного и того же экземпляра. Наличие метода getInstance у класса не является обязательным ниразу. Как и не гарантирует, что инстанс будет тот же, вобщем-то
Нет, ты не прав, есть только одно истинное знание, одна догма, один (правильный) синглтон. Гореть вам всем на кострах, еретики, что думают, будто могут использовать аналогии и, через это, грешить против истины. /sarcasm off
Обсуждают сегодня