Glossary: Software Design Patterns in C++
Abstract factory
A pattern where one object has several make functions that create a family of parts that belong together, such as a carrier and a label printer for one shipping company. A simple factory is enough for most cases.