Describe Design Patterns? here.