AP Computer Science-A Daily Lessons - syllabus

June 2018
Date Class Activities Objectives. SWBAT:
11-13 Awards practice and ceremony
Work on MESA Python and cryptography, Review homework
Program in Python
Use different kinds of cryptography
Identify common circuit components and how they work together
     
8 Work on MESA Python and cryptography, Review homework Program in Python
Use different kinds of cryptography
7

Solder
Homework: make a quiz about the Random number generator soldering project.


Finish soldering
6 Work on MESA Python and cryptography Program in Python
Use different kinds of cryptography
5 Work on MESA Python and cryptography Program in Python
Use different kinds of cryptography
4 Meet in the woodshop and solder Solder circuits with ICs
May 2018
Date Class Activities Objectives. SWBAT:
31 Meet in the woodshop and solder Solder circuits with ICs
30 Meet in the woodshop, identify components, and solder Identify sequential and combinational components of digital electronic circuits
29 Work with Python materials for Reeborg's World and MESA Code in Python, compare language syntax
     
25

Work with Python materials for Reeborg's World and MESA

Code in Python, compare language syntax
24

Work with Python materials for Reeborg's World and MESA

Code in Python, compare language syntax
23

Look over Python materials for Reeborg's World and MESA

Learn basic Python syntax
22

Michael, take the 4th quarter exam!

exam
21

Post work into OneNote.

Review exam
        Homework
18 no warmups
  1. 4th quarter exam
  2. put your Scary Creature code (all but the Tester class) into OneNote
Take exam

HW#34: complete CodeHS review clever.com

4th quarter exams will be on Friday. Questions will come from CodeHS Review Classes, Data Structures, Searching and Sorting Due 5/21

17
  1. Review for 4th quarter exam tomorrow
Review for exam
16 How is JavaScript different from Java?
  1. Review for 4th quarter exam Friday
  2. Some questions will be about Insect, Spider, Monster, Alien and Vampire. You can print and use your code if you get it printed and approved ahead of time.
Review for exam
15 What is the highest possible whole number value in Java?
  1. Go over the AP CS exam format, tips, and guidelines.
  2. Java subset
  3. Quick reference guide
  4. Review 2d arrays and 4th q exam problems
Review for exam
14 How is an abstract class different from an interface?
  1. Complete the abstract Insect class that includes a latinName, numberOfLegs, numberOfWings, toString, equals method and abstract eat method. Demonstrate a spider that is an insect and can frighten.
Create an abstract class in a heirarchy of classes.
         
11 What are the coodinates of a diagonal line drawn on a square picture in this direction? /
  1. Inheritance: predict what this polymorphic code should do, then test it and check your answers. Enhance the monster classes to frighten. (Monster, Alien, Vampire, Tester)
  2. Create typed arraylists. Add an Insect and Spider class with an Interface called ScaryCreatures. A spider is scary, but a bug is not, so not all Insects can frighten.
  • Cast between types, use polymorphic code

HW#33: Log in through clever.com. Finish through CodeHS Data Structures. TAKE GOOD NOTES! 

due date 5/14. Drop dead date 5/18 In order to get homework points you have to JOIN the codehs class

10 What are the coordinates of a diagonal line drawn on a square picture in this direction? \
  1. Fire drill.
  2. Plan and generalize a solution:
    1. Code an "X" across a square picture
    2. Copy the top x lines from the top to the bottom of a picture
  3. Copy the code to do the Inheritance: predict what this polymorphic code should do, then test it and check your answers. Enhance the monster classes to frighten. (Monster, Alien, Vampire, Tester)
  • Sketch specific solutions in order to create general ones.
9 Write an equals method for the Picture class.
  1. Quiz on picture lab and Java review
  2. Go over extra Picture Lab methods.
  • Analzye and code 2d transformations
8

What does this do to int[]a?

int half = a.length/2;
for(int i=0;i<=half;i++)
a[half+i]=a[i];

  1. Finish routines and OneNote for Picture Lab
  2. Work on CodeHS reviews through data structures.
  • Use Color objects and different loops
7

What does this do to int[]a?

int half = a.length/2;
for(int i=0;i<half;i++)
a[half+i]=a[half-i];

  1. Review Picture Lab code
  2. Quiz on picture lab and CodeHS review will be Wednesday
  • Access and modify sections of 2d arrays
         
4 Given Pixels p and q, what will  
p.setRed(q.getBlue()); do? 
  1. There will be a quiz on Monday based on the Picture lab and the questions in CodeHS AP Review sections: Basic Java, Methods,  Classes and object oriented. TAKE NOTES! 
  • Review Java basics, methods and classes 

HW#32(cont.): Log in through clever.com. Finish through CodeHS AP review classes and object oriented. TAKE NOTES! 

due date 5/7. Drop dead date 5/11 Homework

3 What are throw/catch used for? 
  1. Work on completing the methods in the Picture Lab class in your Picture Lab section of One note and paste screenshots of results on your Picture Lab page 
  • Maniuplate objects in 2d arrays
2 What are 2 things that could cause a Java program to crash?
  1. In order to get homework points you have to JOIN the codehs class
  2. The basics of throw/catch. Recognize ArithmeticException, NullPointerException, ArrayIndexOutofBoundsException, IllegalArgumentException.
  3. Crash the program every way possible.
  4. Extra: Learn about trying "dangerous" code and catching exceptions with 5 basic guidelines.
  • Learn to code for errors.

The rest of this week's activities will be in OneNote

1 Why isn't this correct?
public int methodx(int x){
x = this.x;
}
  1. Java flashcards. Anybody want a set?
  2. Do the Java code review for points (if you miss class, or want to improve your grade, go to quizizz and join class 217125 by 5/2)
  3. Finish the methods from Thursday's planning session for the Picture class. (only blue, negate, greyscale and prisoner)
  4. Continue to work on the Picture Lab
  • Modify pictures with code
  • Use inheritance
April 2018
Date Warm-up Class Activities Objectives. SWBAT: Homework
30 What's the difference between an abstract class and an interface?
  1. Homework notes due.
  2. Java code review
  3. Create the methods from Thursday's planning session for the Picture class.
  4. Continue to work on the Picture Lab
  • Modify pictures with code
  • Use inheritance

HW#32: Log in through clever.com do CodeHS AP Java review parts 4-5 - take notes

due date 5/7. Drop dead date 5/11

         
27 If a 100X100 picture were stored in a 1d array of Pixels, where would the first pixel of the last row be?
  1. Use an AP Java Review book and identify areas of
  • Identify areas of expertise and weak areas

HW#31: Log in through clever.com do CodeHS AP Java review parts 1-3 - take notes

due date 4/30. Drop dead date 5/10

26 If a 100X100 picture were stored in a 1d array of Pixels, where would the first pixel of the last column be?
  1. Do the prisoner in bars: notes and powerpoint
  2. Write out code for Picture class
  • Manipulate arrays of pixels
25 Given Pixel p1 and Pixel p2, ask if p1 is lighter than p2
  1. Look at CodeHS AP Java review
  2. Work on the Picture Lab
  • Iterate a 2d array to gather or change information
24 Create a Color object that is purple.
  1. Review the last part of the worksheet in OneNote on 2d arrays and loops.
  2. Work on the Picture Lab together. Find darkest, and lightest Colors of a whole picture and each quadrant.
  • Code with color objects.
  • Scan a 2d array
23 Write the code to ask if the first element in array x[][] is even
  1. Review the worksheet in OneNote on 2d arrays and loops.
  2. Work on the Picture Lab together. Set up the project and explore pictures. pixLab - student works in Dr. Java.
  • Access color, pixel and picture objects
         
20 What is x[0].length from yesterday's array?
  1. Review 2-d array problems in CodingBat
  2. Do the worksheet in Edhesive on 2d arrays and loops. (in OneNote)
  3. Look at the Picture Lab
  4. Copy the picture lab files to your H drive from Handout and
  • Code pixels in a 2d array

HW #30: Complete Edhesive Lesson 21 Tracing Code

due date 4/23. Drop dead date 4/27

19 How many elements are in x[2][3]?
  1. Review sumHeights, sumHeights2, scoresIncreasing
  2. Plan a 2-d array problem: generate a random tic tac to board and determine if there is a winner.
  3. Do the 2-d array problems in CodingBat
  • Code with 2-d arrays
18 Is there such a thing as a 3d array in Java? (look it up if you're not sure) 
  1. Finish Edhesive lesson 8-19 on 2 dimensional arrays. We will discuss these and do some 2-d array coding in class tomorrow 

  2. Do CodingBat AP exercises sumHeights and sumHeights2. We'll also go over these and the other 2 codingBat from last week in class tomorrow 

  • Perform operations on 2d arrays
17 What is a disadvantage of binary search over linear/sequential search?
  1. Any questions about the review?
  2. Quiz 4
  3. Continue work on Edhesive 8-19 on 2 dimensional arrays
  • Desmonstrate understand of class structure and search/sort algorithms
16 What is a linear search: O(n) or O(n2)
  1. Do a review for tomorrow's quiz for points TODAY. When you finish, check your answers.
  2. Start Edhesive lesson 8-19 on 2 dimensional arrays
  • Use code to create 2 dimensional arrays
         
13 O(n) refers to the time it takes to go through an array of n elements once, O(n2) is the time it takes to go through an array n times for each of n elements. Which is the time for a selection sort?
  1. Get ready for Quiz 4 on Tuesday (part 2)
  2. Do CodingBat AP questions: scoresIncreasing and scoresIncreasing
  3. Complete Edhesive lesson on Merge Sort 7-18
  • Complete searching and sorting routines

HW #29: Complete Edhesive Lesson 17 Binary Search.

due 4/16 drop dead date 4/20

12 What is a very efficient sort routine?
  1. Discuss comparisons of sorts
  2. Review Quiz 3, Get ready for Quiz 4 on Tuesday (part 1)
  3. Work on Edhesive lesson on Merge Sort 7-18
  • Implement merge sort algorithm, compare different sort advantages on different data sets.
11 Why does a merge sort use more memory than a selection or insertion sort?
  1. Do the worksheet on Comparing searches and sorts in OneNote in Edhesive Term 2
  • Compare sort efficiencies 

10 In 5 words or less describe a binary search.
  1. Learn about and look at the Merge Sort routine together.
  2. Work on Edhesive Lesson 18 Merge Sort. (or take the quiz if you missed it)
  • Compare different sorts
  • Describe Merge sort pseudocode
9 Why must a collection be sorted to use a binary search?
  1. Binary search worksheet.
  2. Develop the binary search algorithm.
  3. Compare kinds of searching and sorting routines: linear search, binary search, selection sort, insertion sort & lists
  • Develop binary search psuedocode
  • Step through a binary search
  • Compare searches
         
6 When does a subclass constructor call the superclass constructor? How does a subclass call on methods in the superclass with the same name?
  1. Quiz 3 (10 questions) in term 2 Unit 7 lesson 14.
  2. Complete GameWheel.
  • Review class structure

HW #28: Complete Edhesive Lesson 16 Insertion Sort.

due 4/9 drop dead date 4/13

5 Given arraylists a and b, what does this code do
while(b.size()>0)
a.add(b.remove(0));
  1. Act out insertion and selection sorts
  2. Work on GameWheel main program.
  3. Quiz tomorrow.
  • walk through code
  • complete main method
4 When is (x>y)||(y>x) true?
  1. Watch how Insertion Sort works. How can you tell when Insertion or Selection sort are complete?
  2. Review Arrays and recursion worksheets. Prepare for Quiz Friday. Practice writing out steps in problem solving
  3. Complete GameWheel by Friday. Here are hints.
  • translate pseudocode to code
  • trace code
March 2018
Date Warm-up Class Activities Objectives. SWBAT: Homework
29 How can you tell when an array is sorted during a selection sort?
  1. Do some array review problems together
  2. Go over GameWheel together with alternate algorithms. (submissions don't look very promising.)
  3. Complete the arrays and recursion worksheets. Take home if needed to review together when we return.
  • Review arrays and array methods

HW#27: Complete Edhesive Lesson 15 Selection Sort including the Coding Activity.

Due 4/4 Drop dead date 4/6

28 Complete the if statement for a selection sort for the ArrayList a:
for(int i=0;i<a.size()-1;i++)
for(int j=i+1;j<a.size();j++)
if(_______) swap(i,j);
  1. Complete OneNote planning sheet with pseudocode for GameWheel in Edhesive Term 2 for due today.
  2. Submit code in Edhesive for GameWheel to scramble the wheel.
  • Plan a strategy in pseudocode after studying supporting class structure and then code.
27 Write a swap method that swaps the values of 2 items in an ArrayList at positions i and j;
  1. Analyze the GameWheel in OneNote
  2. Create a solution.
  • Implement selection sort code
  • Create a random sorting routine.
26 What must be different in the data used for a binary search vs a linear search?
  1. Preview selection sort.
  2. Preview the PrizeCard class and start the GameWheel.
  • Describe the algorithm for selection sort.
  • Convert word problems into code
         
23 How many comparisons are needed at most in a binary search of 10 sorted objects?
  1. Complete Term 2 Lesson 14 coding activity.
  • Convert word problems into code

Anyone interested in National Cyber League?

HW#26: Complete Edhesive Lesson 14 Linear Search including the Coding Activity.

due 3/26. Drop dead date 3/29

22 How many comparisons are needed at most in a linear search of 10 objects?
  1. Preview the linear search coding activity, ppt and activity
  • Search a collection
21 ~*~* snow day! *~*~
20 Write 1001001001 in octal, hex and decimal
  1. Review class structure from quiz and Ultimate Frisbee
  • Create complete class structures
19 Write the equals method for a Die class with an integer instance variable value.
  1. Quiz on class design with compareTo and toString.
  2. Continue the Elevens Lab.
  • Demonstrate class completion code
 
16 Write the method header for the equals method
  1. Quiz review using the Die class
  2. Continue the Elevens Lab.
  • Demonstrate class completion code

 

 

HW #25: Complete Edhesive Lessons 12, wrappers and 13 Algorithms due 3/19

15 Write the method header for the toString method.
  1. Work on the Elevens Lab. Complete Activities 1 and 2 in OneNote and at least start Activity 3.
  2. Quiz tomorrow on compareTo methods and a class similar to Card class.
  • Complete code for Ap Collegeboard lab
14 π Write the method header for the compareTo method.
  1. Review the Card class. You MUST be able to do this for the quiz.
  2. Work on the Elevens Lab.
  • Plan structure for a problem solution to a general type of problem.
  • Create a collection of objects.
13 Write the code for this psuedocode: add zeros to the value in string s until it is 10 characters long.
  1. Finish translating pseudocode to code for Dashboard
  2. Preview the Elevens Lab. Copy files from Handout drive.
  3. Quiz coming up this Friday
  • Create class objects for common items
12 What is the purpose of an interface?
  1. Translate pseudocode to code for Dashboard comparison methods. (See OneNote Edhesive Dashboard Pseudocode in Collaboration)
  • Implement code from pseudocode
 
9 Why does the compareTo method take in an Object parameter by default?
  1. Look at wrappers.
  2. Review steps needed to solve the comparison methods in the Dashboard class.
  • Make comparisons between objects of the same class

Consider a local summer internship

HW #24 Complete Edhesive Lesson 11 Interfaces due 3/12

8 What is "warm".compareTo("hot")?
  1. The specifications for CompareTo
  2. Implement the Comparable interface in the Dashboad class.
  3. Work on Edhesive Lesson 12
  • Complete CompareTo methods.
7 Which is more likely to be abstract, a superclass or subclass and why?
  1. Discuss interfaces and Comparable.
  2. Implement the Comparable interface for the CertainDay class. Write it down and hand it in.
  • Implement a comparable interface
6 How is an abstract class different from a superclass?
  1. Review is-a and has-a, and abstract classes.
  2. Do the worksheet in OneNote on Abstraction
  • Predict results of code between classes.
5 On a scale of 1-10 how hard would you say the post test was?
  1. Complete Edhesive lesson 10 is-a and has-a
  • Analyze relationships between classes
         
2 school cancelled for severe weather

Consider a Cybercorps scholarship

HW #23 Complete Edhesive Lesson 9 Abstract Classes due 3/5

1 Look at problem #16 Post Test SLO quarterly exam
February 2018
       
28 What is required to implement an interface?
  1. Quartery exam review in OneNote.
  • Review for quarterly exam
27 What is the relationship between the BoxCar and FreightTrain classes?
  1. Review Assignment #2 Boxcar together.
  2. Review for quarterly exam on 3/1.
  • Create collections of self-defined objects
  • Review for quarterly exam
26 What is the relationship between the Captain and Player classes in UltimateFrisbee?
  1. Review Assignments 1-3, work on Frisbee
  2. Review for quarterly exam on 3/1.
  • Reflect on self teaching format and content of lessons using class structure
         
20-23

All warmups and work will be in OneNote

Look for work in the Collaboration space on the Project Planning Page. Be sure to assign somebody to look in on the OUT SICK page each day.

  1. Embezzle quickly! Here are the files: BankAcct, Checking Acct, Savings, Embezzle
  2. Work with your team to plan lessons to teach this week and fill in the information in OneNote with links to your materials, who is doing what and other information.
  • Tuesday: Embezzle example
  • Wednesday: Assignment #1 Dashboard
  • Thursday: Assignment #2 BoxCar and Freight Train
  • Friday: Assignment #3: Ultimate Frisbee

HW #22 Complete Edhesive Lesson 8 Inheritance overriding due 2/26

Bunkyo visitors will be visiting the classroom on 2/23.

         
16 Write a for loop that counts from 10 to 2 by 2's
  1. Review BankAccount requirements.
  2. Plan for Embezzling on Tuesday
  3. Work with your team to plan lessons to teach next week.
  • Plan programs using classes and inheritance

HW#21 Finish Edhesive Lesson 6-7 Inheritance due 2/20

What will you teach next week? 3 teams plan 3 lessons.

Bunkyo visitors will be visiting the classroom on 2/23.

15 Meet in S208. Write 100101010 in hex, octal and decimal
  1. Work with your team to plan lessons to teach next week.
  • Use the software design process to attack a large problem as a team
14 valentine day If a Rose is a Flower, which is the superclass?
  1. Run test cases for BankAccounts.
  2. Plan lessons to teach next week.
  • Implement subclasses and ArrayLists of objects within a class structure.
13 What is single inheritance?
  1. Review BankAccount classes, with presentation of details.
  2. Create BankAcct, checking, savings and money market according to the directions and later we will do the Embezzle exercise
  • Implement subclasses and ArrayLists of objects within a class structure.
12 How is null different from void?
  1. Presentation: take notes about inheritance & do the quiz
  2. Work on Edhesive 6-7
  • Define super and subclasses.
         
9 What is NLP?
  1. Quick class vocab review
  2. Quiz
  3. Hand in Magpie lab papers.
  • Demonstrate use of class design and NLP code

HW #20 Create 2 classes: BankAcct, and TestBankRunner according to these directions. Copy and paste your code into Onenote. Due 2/12

 

DROP DEAD DATE for Edhesive Lessons 5-6 is this Friday 2/9.

8 What feature in the OneNote notebook allows the teacher to see a history of every single word that is typed into it?
  1. You can still get 80% if you put a good question or comment in OneNote Collaborative page on the homework about bank accounts.
  2. Finish the Magpie labs.
  3. Be ready for the quiz tomorrow and to hand in Magpie.
  • Complete College Board provided AP labs
7 What does this() mean?
  1. Finish Magpie Activites 3 and 4 using the student guide and writing answers in your paper packet. Hand in papers on Friday. Look up JavaDoc parts online because it doesn't work in our Dr. Java.
  2. Look over the homework about making bank accounts. Put a good question or comment in OneNote Collaborative page on Bank Accounts
  • Identify keywords and groups of keywords in natural language processing.
  • Generate AI responses.
6 Are there any parameters in the toString method?
  1. Review classes and constructors. The equals, toString methods, public, private, this, null and void,
  2. Work on Magpie Activity 3.
  3. Term 2 Quiz 1 coming Friday. (Magpie, classes, constructors, toString, equals, arraylists of objects and OOP vocab)
  • Write constructors with logic, equals methods
  • Use class vocabulary: public, private, null, void, this
5 What is the return type of an equals method?
  1. Work together on Dashboard. (Term 2 Assignment 1)
  • Write constructors to match test cases in a driver or runner program.
         
2 How does a chatbot use AI?
  1. Review code for Edhesive Lesson 5 Student class.
  2. Review AP methods written to solve the Time, Flight and Trip classes. (finish next week)
  3. Do Magpie Labs Activity 2. Implement the existing class, Magpie2.
  • Create code within class definitions.

HW #19 Complete Edhesive lessons 5 (Static) -6(AP review) beyond what is done in class. Due 2/5

 

DROP DEAD DATE for Edhesive Lessons 3-4 is this Friday 2/2.

1 Declare a static variable named flightNumber that holds a whole number.
  1. Finish Time, Flight and Trip classes. Run the driver.
  2. Magpie Labs Activity 1.
  • Fill in AP question code
January 2018
Date Warm-up Class Activities Objectives. SWBAT:
31 What is a static variable?
  1. Preview the Magpie labs.
  2. Work on the Time,Flight,and Trip classes
  3. Add toString methods and static variables.
  • Create toString methods for original classes.
30 Translate 2DC in hex to binary, octal and decimal.
  1. Enjoy a relaxing day working on Edhesive lessons 5 and 6. We will work on the Time,Flight,and Trip classes tomorrow and add static variables.
  • Define local, global, and static variables in classes.
  • Design programs using class structure.
29 Describe the difference between a constructor and a method.
  1. Presentation on Constructors
  2. Do the worksheet on constructors and solutions (OneNote)
  3. Complete the code for the Time, Flight and Trip classes.
  • Define classes with constructors.
  • Complete AP style free response code.
         
26 Meet in S208.
  1. Preview AP style questions about classes.
  • Test class methods. Create a driver file.
  • Use classes in written responses.
HW#18 Complete Edhesive lessons on classes and constructors. (Unit 5 lessons 3-4) Due 1/29
25 List 5 kinds of information about a Student.
  1. Review: what is in a method?
  2. Presentation: classes
  3. Define properties, methods and constructors for Circle and Studentclasses.
  • Define classes with properties and methods.

Go to first semester

Th-Fr: the rest of CodeHS review.

the practice test for us to go over next week

CodingBat AP practice page.

CodeHS AP Java review. ebook from georgia tech.

Runestone Java review https://runestone.academy/runestone/static/JavaReview/index.html

20 question pretest https://runestone.academy/runestone/static/JavaReview/GettingStarted/ptest1.html

 

  1. Review Classes, inheritance, interfaces from the PowerPoint and notes.

 

  1. Finish Freight Train and Frizbee

 

 

 

 

 

 

 

Add equals to Time and conversion of minutes in constructor.

 

 

 

 

 

T Term 2 lesson 5 static vs instance.

W presentation : static vs instance, Review code for the nickname problem.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Review old free response solutions http://www.skylit.com/beprepared/fr.html

Arraylists are on edhesive index

--------------

Write the code to ask if the first letter in the String s is a blank space

Next week

  1. Do codingbat array-1 sameFirstLast together
  2. Do codingbat array-1 commonEnd on your own.

 

Product grade. from Edhesive.

play hexinvaders http://www.hexinvaders.com/

HW due Nov 3 17: while loops . 18: tracing code and counting iterations 19: More loops

in class: Do Assignment 3 planning together. Due next Tuesday.

W: 20: flag variables deMorgan's practice https://runestone.academy/runestone/static/JavaReview/Conditionals/cDeMorgans.html

Th: 21: strings as class types.

F: 22: string functions exam 2 review.

M: exam 2

HW#7 complete lessons 13 (else) and 14(Boolean and truth tables) on your own

National Cybersecurity Career Awareness Week Nov 13-18

lifejourney

prod.lifejourney.us class code 5pxcnvg

Review hw#2 (advanced students make codingbat problems) and for loop/print

HW #4: Complete all Edhesive activities for points in Unit 1 lessons 1-3
due Monday 10/8 7am

Homework #3: due next Friday 9/29: Complete Basic Java up through
Comparison Operators in CodeHS ( Clever.).

Homework #2: Write out the code for these programs on paper.

HOMEWORK #1: Complete at least 3 puzzles at each puzzle level from 21-29 (excluding 26)
of the Code.org Express course. (variables, for loops, functions)

https://runestone.academy/runestone/static/LaPlataAPCS/index.html

be sure to use this http://interactivepython.org/runestone/static/JavaReview/index.html