Skip to content

Casino games simulated using object orientated design best practices. Repository of code from study of "Building Skills in Object-Oriented Design" by S. Lott.

License

Notifications You must be signed in to change notification settings

sam0jones0/oo-design

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

64 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

oo-design

Casino games (Roulette and Craps) simulated using object orientated design best practices, with general classes such as Table, Bet and Outcome being shared between games.

Several Player classes have been implemented to play with a variety of well-known betting strategies. Statistics are gathered over multiple runs of the simulation to compare the efficacy of these strategies (or which strategy loses the least money).

Software quality:

  • Complete with a full pytest test suite covering all code and functionality
  • Typed, type checking with mypy
  • Code formatting with black

Design patterns explored:

  • State
  • Builder
  • Factory
  • Strategy
  • Lazy initialization
  • Wrap / extend

Repository of code from study of "Building Skills in Object-Oriented Design" by S. Lott.

About

Casino games simulated using object orientated design best practices. Repository of code from study of "Building Skills in Object-Oriented Design" by S. Lott.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages