Difference between revisions of "AP Computer Science"

From WLCS
Line 1: Line 1:
 +
== Wednesday (1/8/20) ==
 +
'''Warmup:'''
 +
# Take out a piece of paper
 +
# Draft the layout of one or more rows of Brick
 +
#* Include the x-y coordinates of each Brick
 +
#* Include the dimensions of the window, each Brick, and any gaps
 +
#* Number each Brick from 0, 1, 2, etc. horizontally (top-most left Brick is 0)
 +
# Find a pattern!
 +
 +
'''Agenda:'''
 +
* for-loop initialization tricks
 +
* Two-dimensional for-loop tricks
 +
* boolean checkWin(Brick[] bricks) method
 +
** What are the different ways to determine if a we have cleared all the Brick objects?
 +
* Re-implement Brick Breaker such that it utilizes an array of Brick objects
 +
** Be sure to create a new sketch and do *not* to lose or overwrite your old program
 +
** Implement a one row of Brick in your object arrays Brick Breaker
 +
** Implement and demonstrate a multi-row Brick Breaker game that has winning and losing
 +
 
== Monday (1/6/20) ==
 
== Monday (1/6/20) ==
 
'''Agenda:'''
 
'''Agenda:'''

Revision as of 10:59, 8 January 2020

Wednesday (1/8/20)

Warmup:

  1. Take out a piece of paper
  2. Draft the layout of one or more rows of Brick
    • Include the x-y coordinates of each Brick
    • Include the dimensions of the window, each Brick, and any gaps
    • Number each Brick from 0, 1, 2, etc. horizontally (top-most left Brick is 0)
  3. Find a pattern!

Agenda:

  • for-loop initialization tricks
  • Two-dimensional for-loop tricks
  • boolean checkWin(Brick[] bricks) method
    • What are the different ways to determine if a we have cleared all the Brick objects?
  • Re-implement Brick Breaker such that it utilizes an array of Brick objects
    • Be sure to create a new sketch and do *not* to lose or overwrite your old program
    • Implement a one row of Brick in your object arrays Brick Breaker
    • Implement and demonstrate a multi-row Brick Breaker game that has winning and losing

Monday (1/6/20)

Agenda:

  • Re-familiarize yourself with everything
  • CSTA/ACM Cutler-Bell Scholarship
  • Object-oriented programming review
  • Brick Breaker (bad) demo and debrief
  • null keyword review
  • Arrays of objects
    • Object array instantiation (creation)
    • Object array initialization
    • Object array usage
    • Iteration through an object array
  • for-loop initialization tricks
  • Two-dimensional for-loop tricks
  • Re-implement Brick Breaker such that it utilizes an array of Brick objects
    • Be sure to create a new sketch and do *not* to lose or overwrite your old program

Tuesday - Thursday (12/17/19 - 12/19/19)

Agenda:

  • Complete and demo Brick Breaker
  • Rectangle-circle collision detection
  • Brick Breaker description
    1. Ball bounces around the screen and off of bricks and the paddle
    2. Paddle that moves along the x-axis by following the mouse (lookup mouseX and mouseY)
    3. Row of Bricks at the top of the screen
      • Bricks disappear if they are hit by the ball
    4. Lose if ball goes past the bottom of the screen
    5. Win if all bricks are gone
  • null keyword
  • Arrays of objects
    • Object array instantiation (creation)
    • Object array initialization
    • Object array usage
    • Iteration through an object array

Friday (12/13/19)

Agenda:

  • Circle and Brick intersection test program
  • Complete Brick class definition
  • Brick Breaker description
    1. Ball bounces around the screen and off of bricks and the paddle
    2. Paddle that moves along the x-axis by following the mouse
    3. Row of Bricks at the top of the screen
      • Bricks disappear if they are hit by the ball
    4. Lose if ball goes past the bottom of the screen
    5. Win if all bricks are gone

Monday - Wednesday (12/9/19 - 12/11/19)

Agenda:

  • Processing review
    • Bouncing Ball
    • Brick Breaker
  • Class construction and object usage
    • Ball class notes
    • Brick objects for Brick Breaker
      • What instance variables (attributes) should a Brick have?
      • What methods (behaviors) should a Brick have?
  • Circle and Brick intersection test program
    • Create a small Processing program to test out the math between the intersection a circle and rectangle
    • Use variables for everything
  • Object usage slides
  • Classes slides

Thursday (12/5/19)

Agenda:

  • Test 10 questions?
  • Activity 12 check
  • Coming soon...Processing review
    • Bouncing Ball
    • Brick Breaker

Tuesday (12/3/19)

Agenda:

  • Java Methods & Strings quiz
  • Repl.it reminder - all assignments should be completed by now
  • Multiple Variable Declarations
  • Overloaded Methods
    • Exercises & Examples
    • Why would we want to overload methods?
  • Complete Activity 12: Optional Arguments

APCS - 1920 - November

APCS - 1920 - October

APCS - 1920 - September

APCS - Archives