Skip to content
Advertisement

What’s the difference between Singleton and Registry design pattern

I have some confusion between those two patterns:

singleton
Check if the instance exists return it, or create a new one.

Registry
Check if the instance exists return it, or create a new one and store it.

What the difference between them?

Advertisement

Answer

Both are about instance control. The difference is that Singleton allows only one instance of a given class while Registry holds a 1-1 map of keys to instances. Typically, the key is (or represents) a class and the value is an instance of that class.

For example, Code Igniter framework holds a registry with an instance of each library/model/controller/helper you load and returning those same instances every time.

User contributions licensed under: CC BY-SA
8 People found this is helpful
Advertisement