На первый взгляд шаблон Service Locator выглядит так же, как шаблон Abstract Factory для меня. Кажется, что у них одинаковое использование (вы запрашиваете их для получения экземпляров абстрактных сервисов), и оба они были упомянуты, когда я читал об Injection Dependency.
Однако Я видел шаблон Service Locator, описанный как плохая идея, но видел прямая поддержка шаблона Abstract Factory по крайней мере в одной из основных концепций Injection Dependency.
Если они не совпадают, каковы различия?