This program was implemented using Python and object-oriented principles.
- main.py - This module contains the script for running the game in a terminal.
- match.py - This module defines a Match class that uses the Board class to facilitate game play.
- board.py - This module defines a Board class that holds the chessboard state and is able to extract important information from the chessboard state.
- pieces.py - This module defines classes for the fundamental units of the program, the chess pieces.
Complexity is abstracted away in the following order:
- main
- match (abstracts complexity from main)
- board (abstracts complexity from match)
- pieces (abstracts complexity from board)
Players can play the game through a command line interface. All you have to do is clone this repository and run main.py!
test_match.py holds unit tests for match.py
test_board.py holds unit tests for board.py
test_pieces.py holds unit tests for pieces.py