Определение реестра: если вы хотите найти объект, вы обычно начинаете с другого объекта, имеющего связь с ним, и используйте связь для перехода к нему. Таким образом, если вы хотите найти все заказы для клиента, вы начинаете с объекта клиента и используете для этого метод, чтобы получить заказы. Однако в некоторых случаях у вас не будет подходящего объекта для начала. Вы можете узнать идентификационный номер клиента, но не иметь ссылку. В этом случае вам нужен какой-то метод поиска - искатель, но остается вопрос: как вы добираетесь до искателя?
Реестр по существу является глобальным объектом, или, по крайней мере, он выглядит как один - даже если он не является глобальным, как он может appear.
Singleton Определение: Иногда важно иметь только один экземпляр для класса. Например, в системе должен быть только один диспетчер окон (или только файловая система или только диспетчер очереди печати). Обычно синглтоны используются для централизованного управления внутренними или внешними ресурсами и обеспечивают глобальную точку доступа к themselves.
Исходя из этих определений, их использование совершенно иное.
Реестр реализует шаблон Singleton. –
@JohnConde нет, это не так. Или в лизу не нужно. –
Насколько я понимаю, реестр не позволяет создавать экземпляры. Цель состоит в том, чтобы знание того, как материал должен быть создан, может быть в другом месте, вдали от большинства клиентов реестра. То, с чем вы сравниваете, похоже, является комбинацией фабрики и реестра, в значительной степени нарушая цель реестра. – Stein