Introducing the Factory Pattern
The Factory Pattern is part of the group of Creational Patterns and overall it describes a generic way for object creation and initialization. It is commonly implemented as an object or function that is used to generate other objects. According to the majority of Computer Science resources, the reference implementation of the Factory Pattern is described as a class that provides a method that returns newly created objects. The returned objects are commonly the instances of a specific class or subclass, or they expose a set of specific characteristics.
The key concept of the Factory pattern is to abstract the way an object or a group of related objects are created and initialized for a specific purpose. The point of this abstraction is to avoid coupling an implementation with specific classes or the way that each object instance needs to be created and configured. The result is an implementation that works as an abstract way for object creation and initialization...