ECE 2524

Introduction to Unix for Engineers

TIC-TAC-TOE Review

Usage

The [project] (https://github.com/clayton8/TicTacToeFinal.git) is really fun to play with. Tic tac toe is simple and traditional game yet it nevers get old. But I can tell it is not easy to make the game. So you guys did a really good job! First the README.md is very easy to follow and improves a good description about the game. However, it would be better if you include what more in depth detailes such as what kind of languague, structure or complier you use, I did not know you use python to make the game until I see your command line. As for compiling, I have no problem running the game after executing the command:

$ python game.py

The games run smoothly and I really like your intruduction and graphics, they are very well constructed. However, I noticed that if I type in an invalid input, the game will stop. I would suggest to include an if check statement to check if the input is invalid and if so, it will print some error message to let the player know. It would be cool if you can somehow allow 2 players to play with each other on seperate laptops. It would be awesome.

Style

I think the code can be divided into more files. In the game.py, I would suggest to move the checking win or lose parts to a seperate functions, so the code can be easier to follow and understand. Other than that I think the codes are very well organized. I really like your board.py, it has a lot of functions and you use these function to build up the game.

Philosophy

The project is very modular, each file has multiple functions, as I mention above. In addtion, each function is very easy to follow and does it job really well. Hence, this project totally aced the modular philosophy in UNIX. In addition, the comments included in each function and file help me a lot to understand how the codes work. And there is no dependence among each function.