@galithr

В чем разница между Registry и ServiceLocator?

Изучая паттерны... прочитал про Service Locator и Registry - но не могу понять в чем разница, по сути дела оба паттерна хранят в себе массив объектов и дают к ним доступ. Собственно вопрос - какие отличия у этих паттернов?
  • Вопрос задан
  • 388 просмотров
Решения вопроса 1
RyzhovAlexandr
@RyzhovAlexandr
люблю .NET, интересуюсь также Java, BigData
Если задуматься, то оба можно отнести к фабрикам, порождающим объекты, также у них общее - регистрация экземпляров, которые они могут предоставить. Отличие же в том, что Registry - более явный, т.к. при получении необходимого объекта явно понятно какой тип объектов может предоставить Registry. В ServiceLocator же своим интерфейсом не говорит, что в нем есть, в него можно зарегистрировать почти любой класс, и узнаешь ты это только в runtime. Эта неявность в большинстве случаев и делает этот паттерн антипаттерном.
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы