Design Patterns: Elements of Reusable Object-Oriented Software – GOOD

What stands out about this unbranded textbook is how well it explains difficult topics.