The Object Template Pattern
In this chapter I describe a technique that is so fundamental to object-oriented programming that it isn’t usually classified as a design pattern at all: creating new objects directly from classes or structs. In later chapters, I describe different techniques for managing the creation of objects, but I want to start by explaining the benefit of using classes and structs as templates from which objects are created. Not only is it an important topic in its own right, but it allows me to illustrate the problems that arise when templates are not used to create objects; it also sets the foundation for explaining the benefits of more advanced patterns later. Table 4-1 puts the object template pattern into context.