CSC 216/s08/make clear

From Expertiza_Wiki
Jump to navigation Jump to search

Formatting Resources: Formatting Help Guide from MetaWiki


Javadash: Inheritance Edition

This is a game designed to aid students of Java with learning newly introduced topics, inluding methods and terminology. For this particular example, we chose to teach Inheritance.

Why play this game instead of another?

Javadash is a game meant to focus on the introductory terms associated with any given Java topic. We believe that it is beneficial to a student's learning because it promotes the early learning of definitions relating to the topic. We chose Inheritance for our example because it is a difficult topic for students to understand since linear code has been the standard for many generations in programming, and can benefit any programmer by improving your program's flexibility and robustness.

Number of players

Javadash can either be played with individuals for their own review, or in a classroom setting. We reccomend that Javadash be played by three or four even teams.

Items needed to play

The only props that you will need to play this game is a stack of index cards. It is convenient to have prepared "official" cards in advance on the same style index cards that will be used by the participants. While this step is largely unnecessary, it allows you to anticipate the content and be able to focus on the lesson involved with the game.


Rules of the game

Time required

This game is played in rounds, each typically lasting about 3 minutes, and should be played for at least 5 rounds to ensure fairness in scoring and to encourage optimal learning. Ensure every player/team has adequate index cards for the number of rounds you intend to play.

A typical round

Pick your first term, method, concept, etc to be defined by the players. Announce the term to the class, then instruct them to come up with their definition of the term. Give them 2 minutes to write down (note: teams may discuss the answer amongst themselves) their imitation of a textbook definition that might be found in the Java manual. When time is up, remind all players to put a group number on the index cards before you collect them. The idea with this game is for the players to make their definitions as real and accurate as possible so that another player or team will pick on their definition over the others.

Shuffle the cards received with your official card, and read each one out slowly and confidently to the players. The players should be listening to determine which one they think is the official definition.

Read the cards a second time. After each card is read, ask each player to write down which definition they believe was the official one. This is where you will score as follows:

Scoring

  • Each player gets as many points as the number of votes that their team's definition recieved.
  • Additionally, each player who chose the official card receives one point.

Continue playing for the specified number of rounds.

Upon completion, the player with the highest score is the winner. Prizes are up to the game organizer, however they are highly suggested as it aids with the willingness to participate and learn.

Follow-up

After each round, repeat the term and its official definition. You may wish to prompt a discussion about the term to ensure that the students have learned the correct meaning of the term.


Game cards (prepared for you)

Here are some sample terms and their official definitions that you can use to play Javadash: Inheritance Edition.


Inheritance - A mechanism for extending existing classes by adding methods and fields.

Subclass - A more specialized class that inherits from the superclass.

Superclass - A more generalized class from which a subclass inherits.

Super - A keyword used to call a method of the superclass.

Instanceof - An operator that tests whether an object belongs to a particular type.

Abstract Method - A method whose implementation is not specified.

Abstract Class - A class that cannot be instantiated.

Protected - Designates a feature that can be accessed by all subclasses and all classes in the same package.

Clone - A method that makes a new object with the same state as an existing object.

Video Example

Here is a link to a video that demonstrates a round of the game: Video Example

References

This game was inspired by:

  1. Balderdash [1]
  2. GLOSSARY: A Framegame for Reviewing Concepts [2]