Object-Oriented Software Engineering

This is an archived version of https://www.jhu-oose.com that I (Leandro Facchinetti) developed when teaching the course in the Fall of 2019. Some of the links may be broken.

Assignment 6: Implementation · React

Working on the Assignment

Rock–Paper–Scissors

50 points

Starting from the code we wrote together in lecture.

First, finish the implementation by addressing the TODOs left over from lecture. This is how the game should work:

Rock–Paper–Scissors

Then add the following features.

A “Play Again” Button

20 points

Play Again

A screenshot of the game with the “Play Again” button.

The button must work by resetting the state of the React components, not by reload the page.

Lizard 🦎 and Spock 🖖

20 points

Extend the game following the rules from this The Big Bang Theory episode.

Add an Explanation of Why Someone Won

10 points

With Lizard and Spock the game got too complicated, so a simple “Player 2 wins!” isn’t enough anymore. When the game is over, add an explanation, for example, “Lizard poisons Spock, so Player 2 wins!”

Submission

⚠️  Your assignment is submitted only when you submit the form below.

Assignment

For example, jhu-oose-example-student.
Don’t include an @ sign at the beginning—this isn’t a mention.
GitHub identifiers do not start with 2019-student-.

For example, 48092726db45fd4bcde21e3712ac2d8e4a094797.
Graders will look at the code base as of this commit.
The code base as of this commit must include the filled in template at assignments/6.md.
You may find the commit identifier on the commits page at https://github.com/jhu-oose/2019-student-<identifier>/commits/master. Usually you want the most recent commit.

Anonymous Feedback on Lecture 6

Confidence


Relevance


Difficulty


Pace


Anonymous Feedback on Assignment 6

Confidence


Relevance


Difficulty


Load


⚠️  Don’t submit this form multiple times.

If you run into problems, send an email to assignment-submission@jhu-oose.com. Include the information about the submission: your GitHub Identifier and the Commit Identifier. Don’t include any information about the feedback—it’s anonymous.