Difference between revisions of "AP Computer Science"
From WLCS
Line 1: | Line 1: | ||
+ | == Tuesday (2/12/19) == | ||
+ | '''Agenda:''' | ||
+ | * Class construction, object usage, & object arrays quiz | ||
+ | * Complete and demo War Card "Game"/Simulation | ||
+ | |||
== Wednesday - Friday (2/6/19 - 2/8/19) == | == Wednesday - Friday (2/6/19 - 2/8/19) == | ||
'''Agenda:''' | '''Agenda:''' |
Revision as of 06:17, 12 February 2019
Contents
- 1 Tuesday (2/12/19)
- 2 Wednesday - Friday (2/6/19 - 2/8/19)
- 3 Monday (2/4/19)
- 4 Thursday (1/31/19)
- 5 Tuesday (1/29/19)
- 6 Tuesday - Thursday (1/22/19 - 1/24/19)
- 7 Thursday (1/17/19)
- 8 Tuesday (1/15/19)
- 9 Friday (1/11/19)
- 10 Wednesday (1/9/19)
- 11 Monday (1/7/19)
- 12 Monday - Friday (12/31/18 - 1/4/19)
- 13 Archives
Tuesday (2/12/19)
Agenda:
- Class construction, object usage, & object arrays quiz
- Complete and demo War Card "Game"/Simulation
Wednesday - Friday (2/6/19 - 2/8/19)
Agenda:
- Complete and submit Poker Hands: Part 1 to repl.it
- Introduction to ArrayLists
- AP CS reference card for ArrayLists
- eIMACS ArrayLists chapter review
- Memorize / study ArrayList<E> instance methods
- Processing - Ball example w/ ArrayLists
- Processing - millis() timer example
- Item Collection w/ ArrayLists
- Re-implement your Item Collection game so that it uses ArrayLists instead of arrays
- Start with an ArrayList of 1 robot, and add new robots every 3 seconds
- Start with an ArrayList of 5 items, and remove items when the player collides with them
- ArrayList<Card> examples
- War Card "Game"/Simulation
- Use NetBeans and create a new project for War
- The Main.java file will be the simulation
- Create a new Java class (name the file Card.java) and paste your Card class there
- Design and implement the game/simulation (we will design as a class)
Monday (2/4/19)
Agenda:
- Demo Item Collection Game w/ Object Arrays
- Complete Card class in repl.it (should be done today)
- Work on Poker Hands: Part 1 in repl.it - due Thursday (2/6/19)
Thursday (1/31/19)
Agenda:
- Demo Item Collection Game
- Arrays of Objects
- String arrays (review)
- Ball class and Ball array
- Item Collection Game w/ Object Arrays (assignment)
- Copy your Item Collection Game to a new Processing sketch
- Convert your item Sprites collected into an array
- Convert your robot Sprites into an array
- Demo your converted game on Monday (2/4/19)
Tuesday (1/29/19)
Agenda:
- Item Collection Game - due Thursday (1/31/19)
- We will design a simple top-down item collection game using a new Sprite class (specified below)
- Find and download Sprite images of your choosing
- You can move the player sprite with the keyboard (wrap the player to the other side of the screen if you go off screen)
- The player sprite will be able to collect item sprites
- Robot sprites will follow the player around
- You win when you collect all the items
- You lose if a robot collides with your sprite
- Sprite class (has similarities to the previous Sprite class)
- Attributes:
- double x, y (to be used for position)
- double dx, dy (to be used for step size when moving -- always positive)
- PImage img (stores the image)
- boolean visible (default setting is true -- we will use this variable to track the Sprite's visibility state)
- Constructors:
- Sprite()
- Sprite(String imgfile, double x, double y, double dx, double dy)
- Methods:
- void display() - if visible is true, then display the image
- void moveLeft() - move x-coordinate to the left by dx amount
- void moveRight() - move x-coordinate to the right by dx amount
- void moveUp() - move y-coodrinate upwards by dy amount
- void moveDown() - move y-coodrinate downwards by dy amount
- boolean checkCollision(Sprite other) - returns true if this Sprite is colliding with the other Sprite (use previous Sprite class to help with this method)
- void follow(Sprite other) - compare x and y coordinates of this Sprite with the other Sprite -- move this Sprite towards other Sprite by using the move____() methods
- Attributes:
Tuesday - Thursday (1/22/19 - 1/24/19)
Agenda:
- Dino Game example
- We will convert the non-OOP version into an OOP version
- Add another cactus to the dino game
- Flappy Bird OOP
- What modifications to our Sprite class do we need to make?
- Here are some Flappy Bird sprite images here
- Implement the OOP version of Flappy Bird in Processing
- Bird will need to flap when a key is pressed
- Pipes will need to move and wrap around the screen
- Score increases when a pipe is passed (this will require something to be added to the Sprite class)
- Lose when bird collides with a pipe or when the Bird goes too far below the screen
- Due Thursday (1/24/19) -- last assignment of 2nd Quarter
Thursday (1/17/19)
Warmup:
- Submit your Circle class to repl.it
Agenda:
- Object-Oriented Programming cont'd
- OOP Review - attributes, constructors, setters, getters, public vs. private, this
- toString() method (using the Point class)
- Submit Point class to repl.it
- Classes (Java) slides
- Complete the Car class assignments in repl.it
- Dino Game example
- Add another cactus to the dino game
Homework:
- Complete eIMACS: Activity 14: Address Objects
Tuesday (1/15/19)
- Snow Day
Friday (1/11/19)
Agenda:
- Object-Oriented Programming cont'd
- Person class review
- Vocab:
- class vs object
- declaration vs instantiation
- Point class example
- Point object instantiation
- Point object usage
- Classes (Java) slides
- Circle class example
- Dino Game example
Homework:
- Create a Circle class and test it out
- Follow the Classes (Java) slides
Wednesday (1/9/19)
Agenda:
- Cornell Engineering Diversity Programs - one-week residential programs:
- Catalyst Academy - juniors and seniors from underrepresented backgrounds
- Curie Academy - high school girls who excel in math and science
- Recursion quiz
- Submit Recursion Problems to repl.it
- public static int count(String s, String ch) - returns the number of occurrences of ch (single character string) within s
- public static String reverse(String s) - returns the reversed String s
- public static int reverse(int i) - returns an int that is the full digit reversal of i (e.g. 1234 -> 4321)
- Introduction to Object-Oriented Programming
- Simple program without OOP example
- Simple program with OOP example
- Point class example
- Point object instantiation
- Point object usage
- Classes (Java) slides
- Circle class example
Homework:
- Complete and submit recursion problems to repl.it
- Review SimpleProgramWithOOP notes that we did in class
Monday (1/7/19)
- Don't forget to complete Activity 13 (due tonight)
- Recursion Quiz Wednesday (1/9/19)
- Multiple choice questions
- Free-response question(s)
- Recursion Review & Practice
- Recursion Problems (prepare to submit to repl.it)
- public static int count(String s, String ch) - returns the number of occurrences of ch (single character string) within s
- public static String reverse(String s) - returns the reversed String s
- public static int reverse(int i) - returns an int that is the full digit reversal of i (e.g. 1234 -> 4321)
Monday - Friday (12/31/18 - 1/4/19)
- Winter Break