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
Contents
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)
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
- https://yal.cc/rectangle-circle-intersection-test/
- Read above
- ...but wait...what about the corners? (Hint: Use our circle-circle collision resolution)
- http://flatredball.com/documentation/tutorials/math/circle-collision/
- Brick Breaker description
- Ball bounces around the screen and off of bricks and the paddle
- Paddle that moves along the x-axis by following the mouse (lookup mouseX and mouseY)
- Row of Bricks at the top of the screen
- Bricks disappear if they are hit by the ball
- Lose if ball goes past the bottom of the screen
- 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
- Create a small Processing program to test out the math between the intersection a circle and rectangle
- Use variables for everything
- https://yal.cc/rectangle-circle-intersection-test/
- Complete Brick class definition
- Brick Breaker description
- Ball bounces around the screen and off of bricks and the paddle
- Paddle that moves along the x-axis by following the mouse
- Row of Bricks at the top of the screen
- Bricks disappear if they are hit by the ball
- Lose if ball goes past the bottom of the screen
- 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