Factory Design Pattern

A function or class, whose primary responsibility is creating instances of another class.