18. Что такое dependency injection?Теория

Дополнительные вопросы

1. Зачем dependency injection в тестах?

Темы

Dependency injection значит, что зависимость приходит снаружи, обычно параметром инициализатора. Объект сам не создаёт сеть, базу и shared. Снаружи можно подставить другую реализацию, не меняя класс.

Дополнительные вопросы

1. Тест передаёт подделку вместо сети или базы. Видно, какой запрос ушёл и какой ответ разобрали, и тест не зависит от сервера. Синглтон внутри класса так подменить нельзя.