Внедрение зависимостей выглядит великолепно, однако, когда я смотрю на примеры, я часто вижу множество конфигурационных XML-файлов.Это нехорошо, потому что:
- У меня нет проверки времени компиляции имен типов в файлах конфигурации
- Инструменты рефакторинга не обновляют файлы confilg при переименовании типов
- Я не хочу, чтобы клиенты меняли конфигурацию!
- Я программист на C # и не хотел бы скрывать логику моего приложения в XML.
Некоторые платформы позволяют вам конфигурировать их из кода, однако большая часть их документации (и примеры) предполагает, что вы используете XML, так как конфигурация XML появилась первой.Так какие же структуры внедрения зависимостей считают конфигурацию на основе кода нормальным способом их использования?