ESE 224 Spring 2015 Course Project Description
Over the course of this semester, you learn various coding concepts in C++ that are applicable to programming in general. This class project is designed to show you how many of these concepts can be used together in a single application and will test your familiarity with programming these concepts. This project is intended for 2-4 people groups.
We will provide a rigid skeleton guide which you MUST follow, but how to implement components in the skeleton is your decision. This means that any public method signature should not be modified (its return type, name, and parameters). However, you are free to remove, add, or edit any private methods you feel necessary. The private methods are included as a guideline to structuring and organizing your code. The private variables should also not be modified, as much of the public functions rely on these private variables. This means we (i.e., TAs) should be able to use our own GUI code to run your minesweeper class, and your GUI class to run our minesweeper. Following this skeleton allows us to show you how a program is typically structured while allowing for your own creativity to shine. You should describe your algorithm/implementation in comments in the code as well as in a final report.
Grading will be roughly divided into 80% for the actual program, 20% for a final report, and an extra 20% for bonus. The actual program should be functional and free of basic errors to obtain credit. Extra points for style will be given for succinct, smart, and readable (spaces and indentation) code as well as good documentation and comments. Every submission should include ALL relevant header files (*.h) and source code (*.cpp) as well as the report. These should compile on GCC without exception. Production code that is unable to compile is obviously unacceptable in industry, and the same mindset should apply here.