Design pattern
Also known as software design pattern
A named, reusable approach to a recurring design problem, adapted to a particular context rather than pasted as finished code.
In the real world
The Factory Pattern centralizes object creation when the concrete type depends on input.