(Странно, но по моему мнению мы опять получили сверхсвязанные классы. Ведь сколько методов используют принудительно указанный тип параметра, в стольких местах и понадобится переименование — разве нет? Примечание переводчика)
По-моему, тут просто не очень удачный пример в коде, т.к. объект класса Responce
используется в большинстве методов контроллера UsersController
. Внедрение через методы удобно использовать когда метод использует объект не используемый в большинстве других методов. Например, если в контроллере пользователей UsersController
есть метод для приглашения на сайт по e-mail другого пользователя inviteByEmail()
, который работает через объект реализующий интерфейс IMailer
:
class UsersController extends BaseController
{
public function inviteByEmail(IMailer $mailer)
{…