Design Patterns
Design patterns are typical solutions to commonly occurring problems in software design. They are like pre-made blueprints that can be customized to solve a recurring design problem in any code.
All patterns can be categorized by their intent, or purpose.
Creational Patterns
This pattern provides ways to create object creation in a manner that increases flexibility and reuse of code.
Factory Method
This pattern provides an interface for creating objects in a superclass, but allows subclasses to alter the type of objects that will be created.