Aaron's Independent Study

From Earlham Cluster Department

(Difference between revisions)
Jump to: navigation, search
Line 45: Line 45:
=== classes ===
=== classes ===
* For classes, I use CamelCase, and start with capital letters (e.g. CircuitObject)
* For classes, I use CamelCase, and start with capital letters (e.g. CircuitObject)
* Each class should have a default constructor and a copy constructor (see Object.hpp for an example).  If a default constructor is used, any parameters that can be passed to it should have default values in the header file.  For example:
Object(string type = "");
* If applicable, each class should have an extraction operator '<<', so that all of the relevant information of an instantiation of the class can be obtained by simply saying cout << classname << endl;
=== Member variables ===
=== Member variables ===

Revision as of 19:55, 1 April 2010

For my senior project I have been developing an educational computer game to teach digital logic, specifically the interactions of logical switches and gates. The working title is "Computer City: Sewers," since the game takes place in the lowest level of a city ( corresponding to digital logic, which is conceptually the lowest level of the computer architecture ). The game is puzzle-based and is written in C++ with the OpenGL API.

The game's source is available at http://github.com/amweeden06/SRSem-Project-2009/tree/master/Source/

I welcome any contributions to my project. See the directions below for instructions on how to do so, and my suggestions for adding to the game. Any questions, send email to amweeden06 at earlham dot edu .


Contributing to the project

Getting Started

github is the source code control of choice for this project. Below are the instructions for downloading the source code from github:

  1. Set up an account at github (it's free)
  2. Let me know your username once you have created an account so I can add you to the contributors list (send email to amweeden06 at earlham dot edu)
  3. On a shell, type the following:
$ mkdir Sewers
$ cd Sewers
$ git init
$ git config user.name <your git username>
$ git config user.email <your email>
$ git remote add origin git@github.com:amweeden06/SRSem-Project-2009.git
$ git pull origin master
$ cd Source/ACL
  1. You should now be in the directory with the source code. To build, type
$ make
  1. This will make an executable called Sewers. To run, type
$ ./Sewers


Key commands

Notes on style

The following are stylistic conventions that I would ask you to conform to as you make changes to the program. This will help improve overall readability. Any questions, comments, or suggestions with regard to style decisions can certainly be directed to me via email (amweeden06 at earlham dot edu).

Variable names


Member variables

Global constants

Const member functions

Indenting, whitespace, and bracing

int main()


Personal tools
this semester