Definition: Reusable Solutions to Common Problems - What Are Design Patterns | OneNoughtOne