Factory (object-oriented programming) - Wikipedia, the free encyclopedia