design patterns for beginners - Search