...
Creational Patterns are about object creation mechanisms, trying to create objects in a manner suitable to the situation. The basic form of object creation could result in design problems or in added complexity to the design. These patterns provide a way to create objects while hiding the creation logic, rather than instantiating objects directly. Examples include the Singleton, Factory Method, and Abstract Factory patterns.
Structural Patterns are about organizing different classes and objects to form larger structures and provide new functionality. These patterns help ensure that when one part of a system changes, the entire structure doesn't need to change along with it. Examples include the Adapter, Decorator, and Composite patterns.
Behavioral Patterns are about identifying common communication patterns between objects and realizing these patterns. These patterns are specifically concerned with communication between objects. Examples include the Observer, Strategy, and Command patterns.
We will look at a few of the design patterns in this section.