This repository contains the work that has been done so far on the chess tournament program.
There are data files provided:
- JSON files for the chess clubs of Springfield and Cornville
- JSON files for two tournaments: one completed, and one in progress
This package contains the models already defined by the application:
Player
is a class that represents a chess playerClub
is a class that represents a chess club (includingPlayer
s)ClubManager
is a manager class that allows to manage all clubs (and create new ones)
This package contains classes that are used by the application to display information from the models on the screen. Each screen returns a Command instance (= the action to be carried out).
This package contains "commands" - instances of classes that are used to perform operations from the program.
Commands follow a template pattern. They must define the execute
method.
When executed, a command returns a context.
The main application is controlled by manage_clubs.py
. Based on the current Context instance, it instantiates the screens and runs them. The command returned by the screen is then executed to obtain the next context.
The main application is an infinite loop and stops when a context has the attribute run
set to False.