Я пытаюсь понять инъекции зависимостей (DI), и еще раз я потерпел неудачу. Это просто кажется глупым. Мой код никогда не бывает беспорядок; Я почти не пишу виртуальных функций и интерфейсов (хотя я делаю это однажды в синей луне), и вся моя конфигурация магически сериализована в класс с использованием json.net(иногда с использованием сериализатора XML).
Я не совсем понимаю, какую проблему он решает. Это похоже на способ сказать: "привет. Когда вы столкнетесь с этой функцией, верните объект, который имеет этот тип, и использует эти параметры/данные".
Но... зачем мне это использовать? Примечание. Мне никогда не нужно было использовать object
, но я понимаю, для чего это.
Каковы реальные ситуации при создании веб-сайта или настольного приложения, в котором можно было бы использовать DI? Я могу легко найти случаи, когда кто-то может захотеть использовать интерфейсы/виртуальные функции в игре, но это крайне редко (достаточно редко, что я не могу вспомнить один экземпляр), чтобы использовать это в не-игровом коде.