IB Computer Science 1
From WLCS
Contents
- 1 Friday - Monday (4/28/17 - 4/29/17)
- 2 Wednesday - Thurdsay (4/26/17 - 4/27/17)
- 3 Monday - Tuesday (4/24/17 - 4/25/17)
- 4 Thursday - Friday (4/20/17 - 4/21/17)
- 5 Tuesday - Wednesday (4/18/17 - 4/19/17)
- 6 Monday - Friday (4/10/17 - 4/14/17)
- 7 Friday (4/7/17)
- 8 Wednesday - Thursday (4/5/17 - 4/6/17)
- 9 Monday - Tuesday (4/3/17 - 4/4/17)
- 10 Archives
Friday - Monday (4/28/17 - 4/29/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