Table of Contents
- Object-oriented Design
- Objects in Python
- When Objects Are Alike
- Expecting the Unexpected
- When to Use Object-oriented Programming
- Python Data Structures
- Python Object-oriented Shortcuts
- Strings and Serialization
- The Iterator Pattern
- Python Design Patterns I
- Python Design Patterns II
- Testing Object-oriented Programs
- Concurrency

