Допустимо ли инициировать внедрение зависимости на нескольких уровнях?
Позвольте мне привести пример: скажем, у меня есть служба с API, которая возвращает несколько ресторанов рядом с предоставленным местоположением GPS.
Во время запуска службы я хочу использовать внедрение зависимостей для создания экземпляров глобальных объектов (пример: класс транслятора GpsCoordinatesToCountryState).
Когда приходит запрос на API getRestaurants (GpsLocation), я хочу снова использовать Dependency Injection для создания объектов, которые вызываются для поиска ресторанов рядом с заданным местоположением.Например, я мог бы хотеть использовать полиморфизм, чтобы обращаться с пользователями в США и Индии по-разному для определенных классов.
Является ли этот подход приемлемым или он нарушает какие-либо передовые практики использования DI?