Structural Patterns

Structural design patterns show you how to glue different pieces of a system together in a flexible and extensible fashion. They help you guarantee that when one of the parts changes, the entire structure does not need to change.

These patterns focus on, how the classes inherit from each other and how they are composed from other classes. Structural patterns use inheritance to compose interface or implementations. Structural object patterns describe ways to compose objects to realize new functionality

Related Tags

Tutorials

Proxy design pattern

Proxy Design Pattern

According to GoF definition of proxy design pattern, a proxy object provide a surrogate or placeholder for another object to control access to it. A proxy is basically a substitute for an intended object which we create due to many reasons e.g. security reasons or cost associated with creating fully initialized original object. 1. When …

Flyweight Design Pattern

As per GoF definition, flyweight design pattern enables use sharing of objects to support large numbers of fine-grained objects efficiently. A flyweight is a shared object that can be used in multiple contexts simultaneously. The flyweight acts as an independent object in each context. 1. When to use flyweight design …

Facade Design Pattern

Facade design pattern provide a unified interface to a set of interfaces in a subsystem. Facade defines a higher-level interface that makes the subsystem easier to use.

Bridge Pattern (with Example)

Bridge pattern is about preferring composition over inheritance. Implementation details are pushed from a hierarchy to another object with a separate hierarchy.

Adapter Pattern

The adapter design pattern is a structural design pattern used to allow two unrelated interfaces to work together. The object that joins these unrelated interfaces is called an Adapter. The definition of Adapter provided in the original Gang of Four book on Design Patterns states: “Convert the interface of a …

Decorator Pattern

In software engineering, the decorator design pattern is used to add additional features or behaviors to a particular instance of a class without modifying the other instances of the same class. The decorator pattern is often useful for adhering to the Single Responsibility Principle, as it allows functionality to be …

About Us

HowToDoInJava provides tutorials and how-to guides on Java and related technologies.

It also shares the best practices, algorithms & solutions and frequently asked interview questions.