Difference between revisions of "IB Computer Science 1"

From WLCS
(Friday (4/7/17))
Line 3: Line 3:
 
* Emoji Assignment
 
* Emoji Assignment
 
*# Add a new mood to your Emoji class
 
*# Add a new mood to your Emoji class
*# In the main setup() and draw(), create Emoji objects of different sizes and moods at different locations on the screen.
+
*# 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
 
*# Display and demo your program to Mr. Bui
 
* Ping w/ Objects
 
* Ping w/ Objects

Revision as of 08:29, 7 April 2017

Friday (4/7/17)

Agenda:

  • Emoji Assignment
    1. Add a new mood to your Emoji class
    2. In the main setup() and draw(), create multiple Emoji objects of different sizes, colors, and moods at different locations on the screen.
    3. Display and demo your program to Mr. Bui
  • Ping w/ Objects
    1. Convert your Ping game so that it uses objects
    2. Create a new sketch named PingWithObjects
    3. Copy and paste your Ball class into a new tab in the sketch (separate classes should be in separate tabs)
    4. Create a new class in a new tab named Paddle
    5. Move the Ping paddle attribute variables to the Paddle class
    6. Create a default constructor in the Paddle class
    7. Add methods moveLeft() and moveRight() to the Paddle class
    8. 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
    1. Separate classes in separate tabs or files
    2. Capitalize class names (e.g. Ball, Emoji)
    3. Remember to indent!
    4. Order of sections:
      • attributes
      • constructors
      • methods
    5. All class constructors and methods can access attributes
    6. 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
    1. Convert your Ping game so that it uses objects
    2. Create a new sketch named PingWithObjects
    3. Copy and paste your Ball class into a new tab in the sketch (separate classes should be in separate tabs)
    4. Create a new class in a new tab named Paddle
    5. Move the Ping paddle attribute variables to the Paddle class
    6. Create a default constructor in the Paddle class
    7. Add methods moveLeft() and moveRight() to the Paddle class
    8. 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
    1. Convert your Ping game so that it uses objects
    2. Create a new sketch named PingWithObjects
    3. Copy and paste your Ball class into a new tab in the sketch (separate classes should be in separate tabs)
    4. Create a new class in a new tab named Paddle
    5. Move the Ping paddle attribute variables to the Paddle class
    6. Create a default constructor in the Paddle class
    7. Add methods moveLeft() and moveRight() to the Paddle class
    8. Complete and demo the PingWithObjects conversion

Thursday - Friday (3/30/17 - 3/31/17)

Agenda:

Thursday - Wednesday (3/23/17 - 3/29/17)

Agenda:

  • Complete and demo Pong w/ arrays and multiple balls
  • Complete and demo Gravity Launcher w/ arrays and multiple balls

Tuesday - Wednesday (3/21/17 - 3/22/17)

Agenda:

  • Demo missing assignments
  • Convert Project: Pong (Mouse vs Keyboard) to Java AND use arrays so that there are multiple balls on the screen
    • You must change the gameplay! If a ball passes a player's paddle, then give that person a point. When there are no more balls on the screen, then the player with fewer points wins.
    • Note: If you do not have the Python code, then just get a copy from somebody who does
    • key is a char, so you need to use single quotes
    • hit() function must be edited to accept an input parameter i
  • Convert Animation: Gravity Ball with Mouse Launcher to Java AND use arrays so that there are multiple balls (of different sizes) launched
    • Note: If you do not have the Python code, then just get a copy from somebody who does
    • Challenge: Give each ball a different radius. Correlate the initial energy for each particular ball to the radius

Wednesday - Monday (3/15/17 - 3/20/17)

Agenda:

  • Demo missing assignments
  • Demo Java converted Media: Loading & Playing Sounds
  • Arrays in Java (~Lists)
    • Media:JavaArrays_Basic.ppt
    • Use of the [] brackets
    • Explicit declaration
    • Implicit declaration
      • Primitive types
      • Complex types
    • Multiple bouncing balls - create a version of the bouncing balls program in Java that uses arrays and has multiple balls moving on the screen
  • Convert Project: Pong (Mouse vs Keyboard) to Java AND use arrays so that there are multiple balls on the screen
    • You must change the gameplay! If a ball passes a player's paddle, then give that person a point. When there are no more balls on the screen, then the player with fewer points wins.
    • Note: If you do not have the Python code, then just get a copy from somebody who does
    • key is a char, so you need to use single quotes
    • hit() function must be edited to accept an input parameter i
  • Convert Animation: Gravity Ball with Mouse Launcher to Java AND use arrays so that there are multiple balls (of different sizes) launched
    • Note: If you do not have the Python code, then just get a copy from somebody who does

Tuesday (3/14/17)

  • Winter Storm Stella Snow Day

Friday - Monday (3/10/17 - 3/13/17)

Agenda:

Wednesday - Thursday (3/8/17 - 3/9/17)

Agenda:

Monday - Tuesday (3/6/17 - 3/7/17)

Agenda:

Wednesday - Friday (3/1/17 - 3/3/17)

Agenda:

  • Complete the File R/W (I/O) Exercises:
    1. Read a file with first and last names of people. Extract all their initials, such that first and last initials are combined per person (Paul Bui -> PB). Write/Output that list of initials to a file
    2. Write a program that generates a textfile with 10000 random numbers from 0-100
    3. Read a file with 10000 random numbers from 0 to 100. Print out the frequency of each of the numbers (Hint: Use a list to track the frequencies)

Archives