Я заметил, что многие разработчики определяют интерфейс для КАЖДОГО класса, который будет внедрен с использованием инфраструктуры DI. Каковы преимущества определения интерфейсов для каждого класса?