O Que É um Service Locator?
Um service locator é um objeto central que mantém referências a serviços e as entrega quando o código requisita um serviço por tipo ou nome. Em vez de receber suas dependências, um componente chama o locator para buscá-las sob demanda. É uma alternativa à injeção de dependência e costuma ser considerado um anti-padrão porque oculta o que uma classe realmente precisa.
Por que isso importa
Buscar dependências de um locator obscurece os requisitos reais de um componente e complica os testes, já que as buscas ocultas precisam ser stubadas. Muitas equipes preferem a injeção explícita para que as dependências apareçam na assinatura.
Guias relacionados
What Is Inversion of Control?Inversion of control is a design style where a framework or container, rather than your own code, decides whe…
What Is Dependency Inversion?Dependency inversion is the principle that high-level modules and low-level details should both depend on abs…
What Is the Repository Pattern?The repository pattern provides a collection-like interface for accessing domain objects, hiding the details…