Просмотр поста

.
Delphinum
# L!MP (29.11.2016 / 20:32)
Ну это про альясы, в основном их делают для прямого использования контейнера.
Т.е:


use Ololo\Trololo\ServiceInterface;
use Ololo\Trololo\Service;

$container->bind(ServiceInterface::class)->t
Я знаю только два случая, когда алиасы (да и любые имена сервисов, отличные от имени класса или интерфейса) оправданны:
1. При использовании сервиса в качестве плагина. На пример для контейнера хелперов шаблонизатора, в котором не удобно запрашивать хелпер по его полному имени
2. При использовании нескольких сервисов одного типа. На пример в случае, если приложение использует несколько кешей: Cache\Session, Cache\Entity и т.д.
В остальных случаях не вижу смысла в алиасах.

Плохо что класс не имеет интерфейса. Потому от "класса к себе" многие отказываются заменяя на "интерфейс к классу".