Home » java design patterns

java design patterns

Visitor Pattern

In the Visitor pattern, we employ a visitor class to alter the execution algorithm of an element class. This flexibility allows the element’s execution algorithm to adapt as the visitor changes. This pattern falls under the behavior pattern category. In accordance with this pattern, an element object must accept the visitor object, enabling the visitor […]

Visitor Pattern Read More »

State Pattern

The State Pattern is a behavioral design pattern that allows an object to alter its behavior when its internal state changes. The pattern encapsulates states as separate classes and delegates the state-specific behavior to these classes. This makes it easy to add new states and modify the behavior of an object without altering its structure.

State Pattern Read More »

Memento Pattern

The Memento pattern also known as Token is a behavioral design concept that enables the preservation and retrieval of an object’s prior state discreetly, without exposing the details of its internal structure and implementation. Imagine creating a text editor app with an undo feature. To save states for undo, the app records object states before

Memento Pattern Read More »

Mediator Pattern

The Mediator pattern, also known as the Intermediary or Controller, helps manage communication between different objects. It stops objects from talking to each other directly and makes them talk only through a mediator. This keeps things more organized and prevents messy connections between objects. In air traffic control systems multiple aircraft need to coordinate their

Mediator Pattern Read More »

Iterator Pattern

The Iterator Pattern also known as Cursor is a behavioral design pattern that provides a way to access elements of an aggregate object (such as a collection) sequentially without exposing the underlying representation of that object. It is used to traverse a container of elements, allowing clients to access its elements without needing to know

Iterator Pattern Read More »

Command Pattern

The Command Pattern, alternatively referred to as the Action or Transaction pattern, belongs to the category of behavioral design patterns. It involves the conversion of a request into an independent object that encapsulates all relevant information about the request. This transformation enables the passing of requests as method arguments, facilitates the postponement or queuing of

Command Pattern Read More »

Flyweight Pattern

The Flyweight pattern is primarily employed to minimize the volume of object instances and, consequently, reduce memory consumption while enhancing performance. This design pattern falls within the structural pattern category, as it offers techniques for reducing the total number of objects, thereby enhancing the organization of objects within an application. The Flyweight pattern aims to

Flyweight Pattern Read More »

Prototype Pattern

The Prototype pattern is a creational design pattern that focuses on creating new objects by copying an existing object, called the prototype, rather than using constructors. This pattern is particularly useful when creating objects that are similar to existing ones, as it promotes code reusability and reduces the overhead of repeatedly initializing objects from scratch.

Prototype Pattern Read More »

Scroll to Top