Difference between revisions of "IB Computer Science 1"
From WLCS
(→Friday - Monday (4/28/17 - 4/29/17)) |
|||
Line 1: | Line 1: | ||
+ | == Tuesday - Wednesday (5/2/16 - 5/3/17) = | ||
+ | '''Agenda:''' | ||
+ | * What you should have as of now: | ||
+ | ** A BrickClassTest that defines a Brick class and declares and sets up a Brick[] (array) | ||
+ | ** The draw() should loop through the Brick[] and display each brick | ||
+ | * Today, you should: | ||
+ | *# Create a new sketch named BrickBreaker or Breakout | ||
+ | *# Copy over the Brick class and its setup and display code | ||
+ | *# Copy over your Ball and Paddle from Ping | ||
+ | *# Go through the code and clean it up, making any necessary changes | ||
+ | *# Add a new method named checkBrickBottomCollision(Brick br, Ball ba) | ||
+ | *#* It should check if a Ball ba collides with a Brick br's bottom edge, return true and false accordingly | ||
+ | |||
== Friday - Monday (4/28/17 - 5/1/17) == | == Friday - Monday (4/28/17 - 5/1/17) == | ||
'''Warmup:''' | '''Warmup:''' |
Revision as of 07:01, 2 May 2017
Contents
- 1 = Tuesday - Wednesday (5/2/16 - 5/3/17)
- 1.1 Friday - Monday (4/28/17 - 5/1/17)
- 1.2 Wednesday - Thurdsay (4/26/17 - 4/27/17)
- 1.3 Monday - Tuesday (4/24/17 - 4/25/17)
- 1.4 Thursday - Friday (4/20/17 - 4/21/17)
- 1.5 Tuesday - Wednesday (4/18/17 - 4/19/17)
- 1.6 Monday - Friday (4/10/17 - 4/14/17)
- 1.7 Friday (4/7/17)
- 1.8 Wednesday - Thursday (4/5/17 - 4/6/17)
- 1.9 Monday - Tuesday (4/3/17 - 4/4/17)
- 1.10 Archives
= Tuesday - Wednesday (5/2/16 - 5/3/17)
Agenda:
- What you should have as of now:
- A BrickClassTest that defines a Brick class and declares and sets up a Brick[] (array)
- The draw() should loop through the Brick[] and display each brick
- Today, you should:
- Create a new sketch named BrickBreaker or Breakout
- Copy over the Brick class and its setup and display code
- Copy over your Ball and Paddle from Ping
- Go through the code and clean it up, making any necessary changes
- Add a new method named checkBrickBottomCollision(Brick br, Ball ba)
- It should check if a Ball ba collides with a Brick br's bottom edge, return true and false accordingly
Friday - Monday (4/28/17 - 5/1/17)
Warmup:
- Look at the board's drawing
- Look at your nested for-loop that drew the bricks
- Determine a single for-loop that would calculate and generate the same brick coordinates as the nested for-loop
Agenda:
- Create a Brick class with all the appropriate attributes (x, y, w, h, c)
- Your Brick class should have default and specific constructors
- Implement the Brick class's display() method
- Create a BrickClassTest sketch that does the following
- Create a Brick[] named bricks
- Setup your window
- Within setup(), use a for-loop to initialize all the Brick objects in the Brick array
- Within draw(), use a for-loop to display all the bricks
Wednesday - Thurdsay (4/26/17 - 4/27/17)
Warmup:
- Go to Google Classroom
- Complete the Breakout prompt: List the major functional requirements of the game Breakout
- e.g. A moving paddle that responds to user input
- e.g. A moving ball that bounces at the edges
- etc.
Agenda:
- Breakout
- What do we already know how to do?
- What do we still need to figure out how to do?
- How to draw bricks efficiently
Monday - Tuesday (4/24/17 - 4/25/17)
Agenda:
Thursday - Friday (4/20/17 - 4/21/17)
Agenda:
- Work on OOP: Ping
Tuesday - Wednesday (4/18/17 - 4/19/17)
Agenda:
- Object & classes review
- Emoji Assignment
- Add a new mood to your Emoji class
- In the main setup() and draw(), create multiple Emoji objects of different sizes, colors, and moods at different locations on the screen.
- Display and demo your program to Mr. Bui
- Begin working on OOP: Ping
Monday - Friday (4/10/17 - 4/14/17)
- Spring Break!
Friday (4/7/17)
Agenda:
- Emoji Assignment
- Add a new mood to your Emoji class
- In the main setup() and draw(), create multiple Emoji objects of different sizes, colors, and moods at different locations on the screen.
- Display and demo your program to Mr. Bui
- Ping w/ Objects
- Convert your Ping game so that it uses objects
- Create a new sketch named PingWithObjects
- Copy and paste your Ball class into a new tab in the sketch (separate classes should be in separate tabs)
- Create a new class in a new tab named Paddle
- Move the Ping paddle attribute variables to the Paddle class
- Create a default constructor in the Paddle class
- Add methods moveLeft() and moveRight() to the Paddle class
- Complete and demo the PingWithObjects conversion
Wednesday - Thursday (4/5/17 - 4/6/17)
Agenda:
- Introduction to Objects Review
- Emoji class walk-through
- Object & Class Rules
- Separate classes in separate tabs or files
- Capitalize class names (e.g. Ball, Emoji)
- Remember to indent!
- Order of sections:
- attributes
- constructors
- methods
- All class constructors and methods can access attributes
- Use common sense to organize which code happens in which methods (i.e. each method has a specific purpose, and it should only worry about that purpose)
- Default constructor vs "specific" constructors
- Ping w/ Objects
- Convert your Ping game so that it uses objects
- Create a new sketch named PingWithObjects
- Copy and paste your Ball class into a new tab in the sketch (separate classes should be in separate tabs)
- Create a new class in a new tab named Paddle
- Move the Ping paddle attribute variables to the Paddle class
- Create a default constructor in the Paddle class
- Add methods moveLeft() and moveRight() to the Paddle class
- Complete and demo the PingWithObjects conversion
Monday - Tuesday (4/3/17 - 4/4/17)
Agenda:
- Complete and demo OOP: My First Object
- Challenge: Create the Multiple Bouncing Balls using an array of Ball objects
- Ping w/ Objects
- Convert your Ping game so that it uses objects
- Create a new sketch named PingWithObjects
- Copy and paste your Ball class into a new tab in the sketch (separate classes should be in separate tabs)
- Create a new class in a new tab named Paddle
- Move the Ping paddle attribute variables to the Paddle class
- Create a default constructor in the Paddle class
- Add methods moveLeft() and moveRight() to the Paddle class
- Complete and demo the PingWithObjects conversion