The service locator pattern is a design pattern used in software development to encapsulate the processes involved in obtaining a service with a strong abstraction layer.
This pattern uses a central registry known as the "service locator", which on request returns the information necessary to perform a certain task.
[1] Proponents of the pattern say the approach simplifies component-based applications where all dependencies are cleanly listed at the beginning of the whole application design, consequently making traditional dependency injection a more complex way of connecting objects.
Critics of the pattern argue that it is an anti-pattern which obscures dependencies and makes software harder to test.
This software-engineering-related article is a stub.