Project: Reversi

published on April 5, 2012

Time range: 
November 2007
As a: 

School year: second bachelor year, first term.

Reversi on OS X Tiger Reversi on Windows XP Reversi on Ubuntu 7.10

For the introductory C++/Object Oriented Programming course, we had to build a C++ project with a GUI, in teams of two students. The GUI framework we had to use was Qt (partially because it’s an OO GUI framework). At the same time, we had to model the program in UML. As to what we had to build: any 2-player board game, as long as it’s playable on one machine. An AI was explicitly not required due to the very limited amount of time provided for this project. The GUI had to be operational and not refined — especially because this was the first time we were working with Qt. Furthermore, we had to use the data structures provided by the C STL as much as possible. Finally, one last requirement: support for undoing the last move.

I worked with Bram Bonné, and we chose Reversi. I focused on the GUI and the file handling, Bram focused on the game logic and the CLI. Since he used Linux and I used OS X, we chose to highlight Qt’s cross-platform capabilities: we made the app work on OS X Tiger, Windows XP and Ubuntu 7.10.