Computer Science

Schedule

Topics

Activities

Programs

Introduction and Welcome

 

AP Central , Teacher resource search

 

Examine the Standard Java library from the AP Java subset in Appendix A of the AP Computer Science A Course Description.

 

Compilers, IDE, textbooks?

 

JGrasp, JCreatorLite, BlueJ, Eclipse, NetBeans, TextPad

Install JDK compiler and an IDE or your choice

 

Essential Course Resources

 

Audit, Preliminary Resources, and Course and Exam Description

Examine four ( 4) Sample Audit Syllabi

 

Online URLs

 

CodingBat,

 

APCS Teacher Community

 

Textbooks, articles, news.

 

 

 

Attracting students to CS,

Diversity, reaching out to

underrepresented populations,

expanding opportunities.

 

FIRST, NASA videos, NASA for students

 

Differentiated Instruction

Tutoring

Extra Credit

Pair Programming

Review

Hands-on Labs

Program Tests

 

What’s new for next year?

New Labs and Test changes

Exemplar Labs

  1. Elevens LAB
  2. Magpie LAB
  3. Picture LAB

 

 

AP Tips and Strategies

 

 

 

 

 

How to teach AP and prepare for

the AP test.

 

Sharing teaching strategies

CS team problems

Nifty assignments

Pair programming

Course Content

Role-playing

 

Teaching strategies

AP Practice Exams

AP Review (timing and tips)

 

 

The Test

APCS Test and scoring

Free-response and MC

Practice Exam

 

 

Objects

 

String class

 

 

 

 

Primitive Data

 

I/O

Simple data types (int, boolean, double, char); declarations (variable and constant); assignment and arithmetic expressions; console output (System.out.print/println); primitive types vs. objects; using classes to create objects; references; Java library classes (String, Integer, Double, Math, Scanner); and creating random numbers.

 

 

 

Scrambled String

(2014 AP Computer Science A Exam, Free-Response Question 1, AP Central®)

 

Data structures

1D, 2D arrays

creation, insertions, deletions, traversals, algorithms

 

 

Searching through data structures

 

 

Use logical operators to make

programs more robust

 

 

Construct truth tables

 

Sorting data

Search and comparison algorithms (sequential and binary); choosing appropriate data representation and sorting algorithms (selection, merge, and insertion sorts)

control statements, counter, infinite loop, iteration, nested loops, logical operators, truth tables

 

 

LOOPING and CONDITIONALS

 

Conditional Program Statements

 

Sequential & conditional

decision-making processes

 

Boolean expressions

Software Development Process; control flow (sequential and conditional); Boolean expressions, laws, and truth tables; using conditional expressions in if, if-else, and nested if statements; and More operators (increment, decrement, compound assignment).

Declaring and initializing arrays

 

• Manipulating arrays with loops

 

• Creating parallel arrays

 

Iterative program statements

 

 

Loops and controls

 

Flow of control (iteration); using while and for statements; infinite and nested loops;

Manipulate arrays using loops and array indices

• Use the physical and logical size of an array together to guarantee they do not go beyond the bounds of their array by identifying the boundary cases and using test data to verify results

• Understand how parallel arrays can be useful when processing certain types of data

• Work with arrays of primitive data types as well as arrays of objects while understanding the difference between the two types of data

• Understand when to choose an array to represent data instead of an ArrayList

 

Basic analysis of algorithms

Informal comparison and discussion of running times and exact calculation of statement execution counts.

 

 

Ethical and social implications of

Computer use

The responsible use of computer systems (system reliability, privacy, intellectual property, legal issues, and social and ethical ramifications of computer use.

 

 

 


Monday

Topics

Activities

Programs

PPT APSI 2015

Topic Outline pg. 5

Program and class design-what’s

Testable? pg. 8-9

 

APSI description 2014

 

APSI Syllabus 2014

 

Java Subset

Testable Topics pg. 59

 

Programming MC questions:

25 Sample pg. 15

40 Practice Exam pg. 130

 

Sample MC Question

classification

Practice Exam MC Question

classification

 

Person.java

Write MC_Qst34.java

(Practice exam pg. 161)

MC_Qst1.java

MC_Qst2.java

MC_Qst4.java

MC_Qst5.java

MC_Qst6.java

MC_Qst8.java

MC_Qst9.java

 

Lab Requirements pg. 12

Exemplar Lab:

Eleven’s Lab pg. 307

Activity Overview pg. 282

 

Activity 1: design and create

a Card class

Activity 2: Initial design of Deck

class

Activity 3: Shuffling Cards in

a Deck

Activity 4: Adding a Shuffle

method to Deck class

 

4 Sample Exemplar-lab type

mc questions  pg. 296

Anatomy of classes, constructors, and methods; declarations (class, interface, instance variable, method, and parameter); method overloading; method decomposition; object relationships; reasoning about programs (assertions, pre- and post-conditions); data abstraction and encapsulation; and designing and implementing a class.

 

 

 

 

 

 

 

 

Write a Person

Class

 

Write code from

Sample and Practice Exam MC questions

 

 

Code writing and completion

 

 

 

 

 

 

 

 

Students will write Practice exam Q9.

Pg. 137

 

Eleven’s LAB

 

 

Exemplar Lab

Activities

Tuesday

Topics

Activities

Programs

FR exam scoring guidelines

pg. 370-371  2013 Q1 SongList

 

MC_Qst14.java

MC_Qst24.java

MC_Qst31.java

Dog.java

Underdog.java

 

Exemplar Lab: Magpie Chatbot

Pg. 197

 

Activity 1: Read pg. 211

Activity 2: pg. 212

Activity 3: using Java API and

Javadocs;  find keywords

in a String with a while loop

Activity 4: modify responses

Activity 5:  use an array (hw)

 

2 Exemplar-type String mc questions

Pg. 200

FR question solution

 

 

Recursion

 

Intro to Inheritance

 

 

 

Write code solutions

For selected Sample and Practice Exam mc questions

 

Code writing and completion

 

Magpie Lab

 

 

 

 

 

 

 

 

 

 

 

 

 

Lab activities


Wednesday morning

Topics

Activities

Programs

Practice Exam Question 29

Pg. 156

Practice Exam Question 22

Pg. 149

Practice Exam Question 23

Pg. 151

Practice Exam Question 26

Pg. 154

Practice Exam Question 27

Pg. 155

Practice Exam Question 28

Pg. 155

Answer Practice exam Q32 pg.159

Code trace a loop

 

Inheritance

 

Abstract classes

 

Enhanced for loop

on an array of ints

 

 

 

 

Write abstract class

With inheritance

 

Classes with Arrays

Examine Practice Exam Q2 Mountain

Q3 Temperature Grid (2d array)

 

Classes with ArrayLists

Write classes

Write Practice Exam Q4 ScoreInfo and Stats classes

Examine

Picture LAB

 


Thursday

Topics

Activities

Programs

Write classes and subclasses that implement an interface.

 

Interfaces

Write an Eatable interface-

 

public String howToEat();

public void showObject();

 

 

interfaces and abstract classes; Java library classes (Object); reading and understanding class specifications and relationships among classes (“is-a” and “has-a”); understanding and implementing a given class hierarchy; extending a given class using inheritance; and applying functional decomposition.

Design and create a class called Animal, with subclasses Tiger, Chicken, and Elephant. Since chicken is eatable, implement the Eatable interface for the Chicken class.

Create a class called Fruit, with subclasses Apple and Orange. Since all fruits are eatable, implement the Eatable interface for the Fruit class.

 

 


Friday

Topics

Activities

Programs

Write Stats class

Static methods

Write calculateModes()

Write kthDataValue()

 

Complete class

array

Complete methods to find local Max and Mins in an array

 

Wrap up questions