CompSci 308 Spring 2023 |
Advanced Software Design and Implementation |
Complex systems can be viewed either by focusing upon things or processes; there are compelling reasons for applying object-oriented decomposition, in which we view the world as a meaningful collection of objects that collaborate to achieve some higher level behavior. — Grady Booch
The goal of this part is to build the Breakout game you planned using multiple classes with private instance variables.
This is a chance to practice using GIT more effectively on your own before working in a team, using many, small, purposeful commits rather than just one or two large "kitchen sink" or "submit-only" commits.
As a reminder, learning the course tools and procedures are the focus of this project, but it can also be a chance to practice the following mindsets about code that will help acclimate you to the course's overall Design Goals:
To help you debug your game (and us to play it :), in addition to the standard keys to move the paddle, make cheat keys that make it easier
Your code should be readable with short methods, follow the course coding conventions, and be reasonably commented.
Complete your README file, especially documenting your cheat keys, assumptions, and attributions for any images you found online. This file is common for most software projects that helps new developers get started with the project.