Software Design Patterns From Scratch: The Complete Field Guide
A first-principles tour of all 23 Gang of Four design patterns, built up from the ideas underneath them. Every pattern gets a plain-language problem, a real code example, and an honest note on when to use it and when to skip it.