Я в конце про это и написал, но некоторые именно так и лепят
D это про dependency inversion, dependency injection это про другое
По простому, на каждый класс реализации некоторого кода ты лепишь интерфейс, и взаимодействие строишь на основе интерфейсов. Вот только делая так в реальном проекте, ты получишь распухший проект и усложнение когнитивного восприятия кода, потому нужно делать это только там, где действительно уместно
Привет, соболезную твоей судьбе, надеюсь, что у тебя и у бабушки всё будет хорошо
Многое уже написано на эту тему
dependency injection vs dependency inversion site:stackoverflow.com