[Name] Factory method [In Design Patterns] Yes [In Code Complete[15]] Yes [Other] N/A [Description] 
Define an interface for creating a single object, but let subclasses decide which class to instantiate. Factory Method lets a class defer instantiation to subclasses (dependency injection[16]).