Before you keep reading...
Runestone Academy can only continue if we get support from individuals like you. As a student you are well aware of the high cost of textbooks. Our mission is to provide great books to you for free, but we ask that you consider a $10 donation, more if you can or less if $10 is a burden.
Before you keep reading...
Making great stuff takes time and $$. If you appreciate the book you are reading now and want to keep quality materials free for other students please consider a donation to Runestone Academy. We ask that you consider a $10 donation, but if you can give more thats great, if $10 is too much for your budget we would be happy with whatever you can afford as a show of support.
9.9. The Pong Game (Optional)¶
This lesson reinforces the use of procedural abstraction in programming to generalize solutions. Students have two options: 1) Build Pong from Scratch or 2) Enhance a Basic Pong App. Pong was one of the first computer games and consists of a paddle controlled by the user and a ball, which bounces off the edges. Students add enhancements that should use procedures to provide generalized solutions and require if/else statements.
The Student Lesson: Complete the activities for Mobile CSP Lesson 9.9 The Pong Game.
- Computer lab with projection system
- Android devices or emulators
9.9.1. Learning Activities¶
Estimated Length: 90 minutes (Option 1) or 45 minutes (Option 2)
- Hook/Motivation (5 minutes): Show a demo of the Pong game and ask students to work in small groups to brainstorm the types of components needed, the events, and other functionality. Have the groups share with the class then examine the starter app.
- Experiences and Explorations (60 minutes - Option 1; 25 minutes - Option 2)
- Walkthrough - Option 1: Build Pong from Scratch (40 minutes): Walkthough the Pong Tutorial starting from scratch with the students.
- Walkthrough - Option 2: Enhance a Basic Pong App (5 minutes): Walkthrough the Pong Tutorial starting from the template with the students.
- Creative Programming (20 minutes): Ask students to complete the enhancements to the Pong app. Inform the students that they must make incremental additions to the working pong game. They should complete an enhancement and then test the app before moving on, making sure that they test before each new enhancement is added. When testing the app, the students should ask themselves if the app does what it is intended to do. Remind students as needed that they can generalize solutions by using procedures with parameters.
- Rethink, Reflect and/or Revise (10 minutes): Review the Pong enhancement solutions. Discuss what issues the students encountered while enhancing the Pong app and review the if, if-else, and procedural abstraction with parameters. Have students post a reflection on their portfolio and complete the interactive exercises.
The College Board's AP Classroom provides a question bank and Topic Questions. You may create a formative assessment quiz in AP Classroom, assign the quiz (a set of questions), and then review the results in class to identify and address any student misunderstandings.The following are suggested topic questions that you could assign once students have completed this lesson.
Suggested Topic Questions:
You can examine students’ work on the interactive exercise and their reflection portfolio entries to assess their progress on the following learning objectives. If students are able to do what is listed there, they are ready to move on to the next lesson.
- Interactive Exercises:
- Portfolio Reflections:
LO X.X.X - Students should be able to ...
- In the XXX App, look for:
Differentiation: More Practice
If students are struggling with lesson concepts, have them review the following resources:
- Review Logo 2 lesson and how they used procedures with parameters
- [to be added] One Minute Video: Procedures with Parameters
Have students think of their own enhancement to the Pong game and add it. Suggestions could include multiple lives, increasing the ball's speed, etc.
Background Knowledge: Pong Game
9.9.2. Professional Development Reflection¶
Discuss the following questions with other teachers in your professional development program.