Thursday, 15 August 2013

Registry Design Pattern

Master Software Architecture & Design Patterns!

Subscribe to Ram N Java for beginner-friendly, practical software engineering guides!

🔔 Subscribe to Our Channel

What is the Registry Design Pattern?

The Registry design pattern belongs to the base patterns family in enterprise application architecture. In simple terms, a Registry is a well-known, global object that other objects can use to find common objects and services.

Instead of passing dependencies or shared objects across multiple layers through constructors and method arguments, a Registry acts as a centralized directory where common instances can be stored and looked up whenever needed.

Implementation & Structure

A Registry typically stores references as key-value pairs:

  • Map-Based Storage: Behind the scenes, registries are usually backed by data structures such as a HashMap or LinkedHashMap.
  • Singleton Lifecycle: Registries are commonly implemented using the Singleton Pattern to provide a single, globally accessible instance throughout the application.

Real-World Example: CustomerRegistry

Consider a CustomerRegistry storing active customer objects:

  • Key-Value Mapping: The key is the CustomerID (e.g., 1, 2) and the value is the corresponding Customer object (such as John or David).
  • Adding Objects: Components can register instances using a method like addCustomer(id, customerObject).
  • Looking Up Objects: Any service requiring customer data simply calls getCustomer(1) to retrieve John's details without having to query the database or depend on tight coupling.

Click here to watch in Youtube : https://www.youtube.com/watch?v=69tztxUO3cc

Click the below Image to Enlarge
Registry Design Pattern














See also:

  • All Design Patterns Links
  • No comments:

    Post a Comment

    Tutorials