Mr. Meinzen - Advanced Placement Computer Science - A

"Success is the ability to go from one failure to another with no loss of enthusiasm." Winston Churchill

1st Quarter - Introduction & Syntax

Week

Dates & Specifications

Assignment

Syllabus & Topics - FIO

1

Competitions & Practice

 

Program 1 assigned: Tue, 13Aug

16Aug: Quiz 1 Summer Assignment

 

Summer Assignment - download [or access on G: drive] Eclipse IDE and Exemplar Labs (3)

Introduction to Course & AP Exam - Rules & Policies

Introduction of Exemplar Labs

Course Rules and Policies

Review of Object Oriented Programming (OOP) & using Java as a computer language

TextPad / Eclipse IDE

Summer Assignment is to become familiar with Exemplar Labs and Eclipse

Handout: Aptitude Questions

2

Program 1 due: Fri, 16Aug

 

Program 2 assigned: Fri, 16Aug

Program Assignment 1 - Swing Template

Computing in Context

  • Social Issues: examples of reliability, privacy, and ethics
  • Digital Hardware - CPU, memory, peripherals
  • Software Overview
    • Data and Applications
    • Compilers & Interpreters
    • Operating Systems, Virtual machines, Networks
  • Terminology & Principles of OOP & Documentation

3

Program 2 due: Mon, 26Aug (Point class only)

JavaDoc & IDE usage

Program Assignment 2 -Point and curve classes

Java Syntax (Programming Constructs)

  • packages
  • commenting
  • data types (primitives & objects/reference)
  • variables
  • expression

4

Test 1 : Thur & Fri, 5 & 6 Sept

 

 

Test 1 - Day 1 (Syntax)
Test 1 - Day 2 (Syntax)

Economics Project

  • Purpose & Goal Phase
  • Planning Phase:
    - Points (data structures)
    - Curves (functional decomposition)

Project: Economics and the Supply and Demand Curve

  • Point class
  • Curve class(es)

Object Oriented Program Design & Program Implementation

  • Encapsulation, Information Hiding, Abstraction, Top-down design
  • Assertions & Testing

5

Program 2 due (Curve classes): Wed, 11Sep

Program 3 assigned: Wed, 11Sep

Program Assignment 3 - Abstract Curves, ArrayLists, and Sorting

Java Syntax -

  • Class declaration
  • Field declaration

6

Program 3 due: Fri, 20Sep

Economics Project Implementation: class hierarchy and interaction ("has-a" & "is-a")

  • ConsumerCurve
  • ProducerCurve

Java Syntax -

  • Constructor declaration
  • Method & parameter declaration

7

Program 4 assigned: Fri, 20Sep
Program 4a due:

AbstractCurve Class
Handout: Abstract class worksheet

Java Syntax -

  • abstract methods & inheritance
  • pre- and post- conditions

8

Test 2 : Tue, 1Oct and Wed, 2Oct

 

Program 4b due: Thur, 3Oct

Test 2 - Day 1 (Syntax)
Test 2 - Day 2 (Syntax)

Program Assignment 4 --View of Curves
or
Program Assignment 4b -- Consumer & Producer

 

Introduction to Model - View - Controller (MVC) Pattern with Input/Output

Introduction to Java Library Methods and Foundation Classes (JFC) - reusibility

  • Math, Comparable, String, ArrayList classes and methods
  • Wrapper classes & Generics

9

Program 4c due: Wed, 9Oct

GridWorld - Ch 2 Bug Variations

Program Assignment 4c -- Market

GridWorld Ch2 - Extending the Bug Class & making a runner application

MVC Pattern for Consumer & Producer Curves

2nd Quarter - Algorithms & Time Analysis

Week

Dates & Specifications

 

Assignment

Syllabus & Topics

10

Competitions & Practice

 

Program 5 assigned: Thur, 10Oct
Program 5 due: Fri, 18Oct

 

 

Example: Console & File I/O [last tab]

 

Program 5 - divisibility

 

Java Syntax -

  • interface declaration and design
  • statements & program flow control
    • sequential
    • method
    • conditional
    • iteration (for, while, iterator, for-each)
    • recursion
  • exception handling
  • event handling
  • graphics
  • class hierarchy & inheritance
  • console output
  • threads

Program Analysis of Algorithms - Big-Oh (1,logN, N, NlogN, N^2,etc)

11

Program 6 assigned: Mon, 21Oct

Worksheet - Modelling & Coding

Program 6- Intro to Analysis (Handout)

 

 

Standard Algorithms - basic

  • Counter & Accumulator
  • Swap

Modeling and Code Evaluation

12

 

 

Program 6 due: Wed, 30Oct

Program 7 assigned: Wed, 30Oct

Program 7 - Swap (Handout)

 

 

Standard Algorithms - Searching

  • Linear Search
  • Binary Search

Standard Algorithms - Divisibility (modulus)

  • GCF
  • LCM

Debugging in Eclipse - miniLecture

13

Test 3 : Tue, 5Nov &

Wed, 6Nov

Program 7 due: Fri, 8Nov

Program 8 assigned: Thur, 7Nov

Test 3 - Day 1
Test 3 - Day 2

 

Program 8 - Sorting: O(n^2)

Standard Algorithms - Introduction to Sorting

  • Bubble Sort - O(n^2)
  • Selection Sort - O(n^2)
  • Insertion Sort - O(n^2)
  • QuickSort - recursion - O(nlogn)
  • MergeSort - recursion - O(nlogn)

Visualizations of Algorithms and Data Structures

14

Program 8 due: Fri, 15Nov

Program 9 assigned: Fri, 15Nov

Program 9 - Quick and/or Merge Sorting, O(NlogN)

Standard Algorithms - Sorting & Trees

Case Study Ch 3 - GridWorld

Recursion, Iteration & Boolean Logic

15

Program 10 assigned:

 

Exemplar UML Diagrams Assigned:

Program 10 - Exemplar Lab

 

Handout on selecting appropriate Algorithm for given scenarious

Program Analysis - Time-Space Analysis (Big-Oh and "N") for sorting algorithms

  • Testing
    • class & libraries in isolation
    • boundary cases
    • integration

16

Program 9 due: Wed, 5Dec

Test 4 : Thur 5Dec & Fri, 7Dec

Handout: Sorting Scenario Worksheet

Handout: Sample Test Questions

 

Test 4 - Day 1
Test 4 - Day 2

Standard Algorithms - Sorting & Trees

  • Big-Oh
    • average case
    • worst case
    • exact runtime calculations
  • Debugging
    • Error Types: compile, runtime, logic
    • Error Correction
    • Error Tools: debugger, output, hand tracing

17

 

Program 10 due:

 

Standard Algorithms - Sorting Advanced (HeapSort, Radix)

Standard Data Structures - Introduction

Handout: Free Response question on the Exemplar Labs to be tested 1st day of 2nd semester

18

 

Final Exams Week

Review of Syntax and Algorithms

3rd Quarter - Data Structures & Space Analysis

Week

Dates & Specifications

Assignment

Syllabus & Topics

1

Competitions & Practice

 

Program 10/11 due:

 

Program 12 assigned:

1st Day back -

Program 11 - Exemplar Lab

 

Handout: Interfaces for LinkedLists (Stack, Queue, ListQueue)

Program 12 - Linked Lists (Stack & Queue)

see handout from week 17 of 1st Semester regarding CaseStudy, Exemplar Labs, and/or Free Response Questions from previous years.

Visualizations of Algorithms and Data Structures

Lecture: Standard Data Structures

  • Primitives: int, boolean, double
  • Classes & objects
  • Arrays (1D, 2D & multi-D), ArrayLists, Matrices
  • Linked Lists
    • Single
    • Double
    • Circular

2

 

Program 13 assigned:

 

Program 13 - Stack & Queue Problems & Testing

Lecture: Standard Data Structures -Linked Lists & Trees

  • Stacks & Queues
  • Priority Queues (Ordered Linked Lists)
  • Definition of Tree
  • Binary Trees
  • Binary Search Trees (BSTree)

3

Quiz 1:

Program 12 due:

Program 13 due:

Program 14 assigned:n

Quiz 1 (MC & FR) - String Manipulation (similar to Magpie Exemplar Lab)

 

 

Program 14 - Map and Word Frequency application

Lecture: Standard Data Structures - BSTrees

  • Traverse (BSTree)
  • Insert (BSTree)

4

Program 14 due:

Program 15 assigned:

 

Program 15 - Searching, Iteration, Inserting in BSTrees

Lecture: Standard Data Structures - Operations on Trees

  • Search
  • Interator
  • Intro to Hashing

5

Test 5 :

Test 5a (Linked List)
Test 5b (Linked List)

 

Handout: selecting Data Structure & JFC for Models

 

Handout: selecting Maps & Sets for Models

Lecture: Standard Data Structures - Operations on Trees

  • Delete

Lecture: Standard Data Structures - Other, Java Collections Framework (JFC)

  • Sets
  • Maps
  • Heap

6

Program 15 due:

 

Program 16 [handwritten prior to programming] due:

 

Program 16 due:

 

Program 17 assigned:

Program 16 - Deleting in a BSTree

 

Handout: selecting Maps & Sets for Models

 

Worksheet : Data Storage and Binary Representations

Practice for University of Evansville Computer Science Competition (if needed)

Program Analysis

  • Numeric representation
    • different bases (2, 8, 10, 16)
    • representational errors w/ floating point
    • accumulation errors

Lecture: Data Storage - binary representations

 

7

 

 

 

Program 17 Sets & Maps

 

Mini-Lecture Series

mini-Quizzes on Syntax & Structures

8

Test 6 :

Test 6 - Day 1 (Trees)
Test 6 - Day 2 (Trees)

 

9

Program 18 assigned:

Program 17 due:

 

Program 18 - Small Challenge Program

AP Exam Fee due by 15Mar $94

4th Quarter - Exam Preparation & Summary (Labs)

Week

Dates & Specifications

Assignment

Syllabus & Topics

MOCK Exams should be scheduled during IL State Testing (SAT)

10

Competitions & Practice

Program 18 due:

Program 19 assigned:

Quiz :

Program 19 - Heaps

 

Quiz - Binary Data Storage

Archived Questions at the University of Evansville CS Competition

11

Program 19 due:r

In-class team placement questions for AP competitions [SWIC & U of Evansville]

Advanced Placement Exam Preparation Daily Quizzes -

Handout: Exam Preparation Scoring Sheet using the Workbook

12

 

 

Advanced Placement Exam Preparation

Daily Quizzes

13

 

 

Daily Practice Quizzes

14

Day 1: Mon

Day 2: Tue

Day 3: Wed

Day 4: Thur

Day 5: Fri

 

Test 7 - Day 1 Released Exam : MC 1-20
Test 7 - Day 2 Released Exam : MC 21-40

Test 7 - Day 3 Released Exam : FR 1-2

Test 7 - Day 4 Released Exam : FR 3-4
Test 7 - Day 5 Scoring & Rubrics

 

in-class daily practice based on AP Exam

15

Apr , 10:45-2:00pm

 

Mock Exam - Homework score

 

Mock AP Exam 10:45-2:00pm at John Davis Wrestling Facility; students eat "A" lunch

 

16

 

 

Daily Quizzes due:

 

Yearbook Signing Day

 

Advanced MVC Application Program Assignment

Daily Practice Quizzes Due

 

 

17

Fri, 17May2019, morning

 

AP CSA Exam

Final Exams for Seniors

2019 AP Exams (Week 1):

  • Fri, 10May : PM: AP Computer Science Principles Exam

2019 AP Exams (Week 2):

  • Tue, 14May : AM: AP Calculus Exams (AB and BC)

    Thu, 16May : PM: AP Statistics Exam

    Fri, 17May : PM: AP Computer Science A Exam

18

 

Special Topics in Computer Science

Final Exams for non-Seniors

2020 AP Exams (Week 1):

  • : PM: AP Computer Science Principles Exam

2020 AP Exams (Week 2):

  • : AM: AP Calculus Exams (AB and BC)

    : PM: AP Statistics Exam

    : PM: AP Computer Science A Exam

Classroom Policy

TextBook:

  • Data Structures & Problem Solving using Java, 2nd Ed., Mark Alan Weiss
  • Critical Skills:
    • While a book may be assigned, excellent note-taking is expected.
    • The ability to ask "clarifying" questions is a critical skill in this class. The teacher's "answer" depends greatly on how you phrase your question. Two students who ask similar questions may receive completely different responses due to the precise nature of computer languages.
    • Another critical skill is the ability to work and communicate ideas/concepts with other students and your teacher. Many assignments will require teamwork in order to accomplish an assignment.

Grading:

  • Grades will be calculated on a total point basis.
    Grades will primarily be based on individual ability, understanding, and accomplishment.

    Percentage Scale Grade Letter
    100% - 88% A
    87.99% - 76% B
    75.99% - 64% C
    63.99% - 52% D
    51.99% - 1% F
    0.99% - 0% Incomplete
  • Approximate Distribution of Points  
    Programs 50%
    Tests, Quizzes, Papers, etc 50%
    Bonus & Notes 5%
    1 Day Late: (doubles every day thereafter) -5%
  • Grading of programs will consist of two parts:
    1. Program Logic -- does the program work?
    2. Program Style -- does the program follow the "Program Expectations"?
    Program Expectations:
    1. Before writing your programs, create and show Mr. M your design.
    2. Comment appropriately.
      1. All comments must be complete, grammatically correct sentences.
      2. see the JavaDoc Conventions for details.
    3. All non-local identifiers (i.e. fields variable, classes, and methods) must be meaningful and may NOT be abbreviated.
      1. Examples: side, hypotenuse, Deck, getName()
      2. Not: sd, hyp, Dck or getN().
    4. Indent the program consistently.
    5. There may be other Program Expectations at various times throughout the course.

BYOD Policy :

  • A computer lab is available for students for this course. The computers in the lab run the following software (see Resources tab for details):
    • Microsoft Windows 7 (Pro)
    • Java SDK (any version above 6.0)
    • Eclipse (Oxygen)
  • While students may bring in their own computer to complete classroom assignments, there are specific devices that may not be compatible with the Java software.
    • A general rule of thumb is to see if the device comes with a keyboard and mouse...if not, then usually the device cannot be used in the course. For example: MacBooks will work but iPads will not. Please see your teacher if you have specific questions about your device.
  • Phones and/or uncovered cameras are NOT allowed in the classroom.
    • Students who intentionally or unintentionally compromise the privacy of any other student or compromise academic integrity or validity of a test or quiz by their behavior will receive a zero and, possibly, a referal for further consequences. This includes having a camera (i.e. smartphone/BYOD device) out while ANY assessment is in the classroom.
    • For example, a student who turns in their test and then takes out their smartphone (i.e. camera) to listen to music while other students are still working on their tests will receive a zero on their test. As well, a student taking pictures of teacher's notes on the board will not retain/learn of concepts and may be invading the privacy of other students (white boards are highly reflective). Generally, if the teacher is taking the time to hand-write notes on the board, then students should put in the effort to copy the notes.

Advice from 2017-18 students to 2018-19 students

  • Answers to: If you could start AP Computer Science A over again, what advice would you give yourself?

    •  

  • Answers to: What was your favorite part of the course?

    •  

  • Answers to: What was the hardest/least favorite part of the course?

Student Responsibilities:

  • In Seat & Ready to Go when bell stops (i.e. books, sharpened pencils, paper)
  • Respectful of Teacher and Each Other (i.e. raise your hand, don't talk while teacher is talking, no rudeness or bad language, etc.)
  • The two most important ingredients for success in this class are practice and attendance.
  • No eating or drinking in class, 2 bathroom/drinking trips per Semester.
  • Maintain at least 3 backup copies of all work. A "lost" or "destroyed" program will receive zero credit.
  • Remember that, for every hour spent in class, 2 hours of outside class work (homework/projects) are typical for an AP course (i.e. 5 hours in class per week + 10 hours at home)

Responsibilities while absent:

Notes and Homework

Test and Quizzes

  • Get notes from a peer.

  • Read the section and look at examples.

  • Get the assignment from the calendar, web page or a peer in class.

  • Do the assignment, even if you need help come in before or after school for assistance!

  • As per school policy you have the same amount of days as you were absent to make up missing test/quizzes.

  • Any test/quiz not made up in the appropriate amount of time will be a zero.

  • You may need to schedule time with Mr. Meinzen either before or after school to meet or receive appropriate help on a timely basis...plan accordingly!

  • DISCIPLINE:

    • I expect students to be respectful to each other and their teacher. Refer to the student handbook if you have questions.
    • Students are expected to take notes, ask questions, and work consistently and continuously the entire class period.
    • If problems occur in the class the discipline plan, in general, is:
      • Verbal warning (may include "1 minute after class delayed dismissal" or "15 minute after school mini-detention")
      • After school detention
      • Referral to the dean
      • Parents called or e-mailed
      • any student caught downloading and installing a program on the computers without Mr. Meinzen's consent will receive a referral to the dean and possible 5-day suspension

    Tardies and Absences:

    • Attendance is the responsibility of the student and their parents.
    • Parents/ Guardians may be contacted the next day via phone or email to inform them of any absences or student issues.
    • First two tardies result in warnings, 3rd tardy is after school detention, 4th is Saturday detention, subsequent are suspensions.
    • If you have an excused absence, you will be allowed to make up your work for full credit by the same number of days you were consecutively absent.
    • Unexcused absences follow the same procedure as excused absence; however, you will only receive 50% of the grade you earn.
    • Refer to the school attendance policy for complete details on excused and unexcused absences and make-up work.
    • There will be ONE in-school field trip in April to complete an AP "Mock Exam" in preparation for the actual AP Exam as well as the 2nd Semester Final Exam. This field trip is required and the "Mock Exam" will be scored as part of the course grade regardless of the student actually taking the AP Exam or not.

    Advice:

    • Use mechanical pencils (have at least 2).
    • Keep an organized notebook and a folder with all your assignments. Get two classmates’ phone numbers in case you need help.
    • You will need to purchase a flash drive or other storage device for this class.
    • Students must keep multiple backup copies of all work. It is the student's responsibility to be aware that technology is NOT perfect.
    • If purchasing a disk/flashdrive is a problem, let me know
    • WEBSITE for Assignments is http://www.ecusd7.org/ehs/ehsstaff/jmeinzen
    • This class is a COLLEGE COURSE, it requires a great deal of self-discipline. It is easy to be social and not get work done. This is especially true in the first quarter when things seem easiest WARNING! If you do not keep up, you will fall behind and NEVER catch up.

    What can I expect from the teacher ?

    • You can expect the teacher to maintain a classroom atmosphere that is safe and conducive to the education of ALL students. Any student or group of students prevent or disrupt this will be discipline as outlined above.
    • I will try to be available before and after school either in the classroom or in my office in Room 310 for extra help [unless a meeting is scheduled].
    • I can be reached at EHS: 656-7100 (voicemail 20311) or jmeinzen@ecusd7.org.
    • As well, I strongly encourage students and parents to contact me as soon as possible if there are any questions or difficulties.
    • In general, I provide daily information on this website and I contact parents/guardians/students via the email address that is registered with the district. However, please let me know if you wish to be contacted by other means on this form. After you have read over this classroom policy, please sign below, and return to me to be put on file. This is your first assignment.

    Survey Assignment

    • What is your best learning environment (given the classroom we have)?
    • What do you not want your teacher to do that would make you not want to learn this material?
    • What learning/teaching style do you think is most effective for you?
    • What resources do you use to best understand the concepts? (examples: textbook, teacher, family, after-school tutoring, specific website, etc.)?
    • If you could start a realistic classroom tradition, what would it be? (example: every odd-numbered Friday is popcorn-during-lecture day)

    Signature

    • I prefer to be contacted via (circle preference): EMAIL, or PHONE, or OTHER (specify)
      Print Parent/Guardian Name   Print Student Name  
      Parent / Guardian Signature Date Student Signature Date
      email address home phone work/cell phone

    General APCS Information

    IDE's (editors)

    Competition Information

    Practice and Problem-solving

    Other Sites

    Java Library Programs