OO Design and Card Games

Lets look at my favorite OO-Design problem domain: card games.

We'll compare the design of two games: Cribbage and Canasta.

Why? Because they have three common abstractions: cards, hands, and a score.

Overall the player's are dealt cards, form hands, and at some point, accumulate a score. Of course, all …

more ...

The Python Object-Oriented Programming 5th Edition

In time for your Holiday Reading. Want guidance on OO design in Python? Want a lot of concrete examples, fully tested?

  • Master OOP fundamentals with hands-on examples and expert insights
  • Learn design patterns and type hinting with real-world Python 3.13 code
  • Develop scalable programs using testing and concurrency best …
more ...