Design patterns are used and/or referenced by software engineers just as recipes are used and/or referenced by chefs. Recipes and design patterns are both generally repeatable solutions to a commonly occurring problem. For a chef, these problems may include: “How...