23 Design-Patterns