Forsyth Country Day School Curriculum Guide                                     TEC902

TEC902-AP Computer Science Java Eleventh – Twelfth Grades                                      Year

Course                                                                      Grade Level                                                                         Length

 

Overview

Advanced Placement Computer Science is a course designed for the mature, independent student.  Material includes additional programming structures and data structures beyond the introductory level.  Students may take either the A or AB level of the AP exam.  Prerequisites:  Algebra II and Introduction to Computer Programming, or demonstrated proficiency in Java programming.

 

Objectives

The student will:

  1. Understand the main principles of object-oriented software design and programming
  2. Code fluently in Java in a well-structured fashion and in good style
  3. Use Java library packages and classes within the scope of the AP Java subset
  4. Implement algorithms in Java using conditional and iterative control structures and recursion
  5. Analyze and implement common sorting and searching algorithms
  6. Understand standard data structures as defined in the AP course outline, including 1-D and 2-D arrays, and their appropriate applications
  7. Design object-oriented software solutions to problems from various application areas
  8. Read, analyze and modify the Marine Biology Simulation case study
  9. Prepare for the A- or AB-level AP exam in computer science.
  10. (AB only) Introduce “big-O” time and space analysis of algorithms
  11. (AB only) Understand standard data structures as defined in the AP course outline, including lists, stacks, queues, binary search trees, hash tables, and priority queues, and their appropriate applications; learn to use the classes and interfaces for linked lists, stacks, queues, and binary trees provided by The College Board

 

Content

A.     Review of the Introductory Material

B.     Review of Java syntax and style

C.     Review of classes and objects

D.     Strings

1.      String objects

2.      Literal strings

3.      Immutability

4.      String methods

5.      Converting strings into numbers and numbers into strings

6.      The Character class and its methods

E.      An introduction to arrays

1.      One-dimensional arrays

2.      Arrays as objects

3.      Declaring and initializing

4.      Indices

5.      Length

6.  IndexOutOfBoundsException

7.      Two-dimensional arrays: declaring, accessing elements, and dimensions

F.      Review of iterative statements

G.     java.util.ArrayList and Comparable objects

H.     Sorting, searching, and other array algorithms

1.      Sequential and binary search

2.      Finding the largest and smallest value

3.      Inserting into an array

4.      Selection, insertion, and merge sorts

I.        Streams and files (if time allows)

1.      Text and binary files

2.      Streams vs. random-access files

3.      Java I/O package

4.      Checked exceptions

5.      wrapper classes

6.      EasyReader and EasyWriter classes

J.       Graphics and GUI (if time allows)

K.     Inheritance, classes, and interfaces

1.      Encapsulation

2.      Inheritance

3.      Polymorphism

4.      Event-driven computations

L.      Marine Biology Simulation (MBS) Case Study

1.      Introduction

2.      Experimentation

3.      Modifications and exercises

 

Methodology

Explanations of new material begin with a lecture and presentation (on a computer or the board) as the students take notes.  To practice new concepts and clarify ideas, students will work on short written exercises.  To develop and demonstrate their skills, students will write programs on paper and the computer.  Students will practice solving AP questions, both multiple-choice and free-response (from previous exams or exam-reviewed books).

 

Evaluation

Tests (40%): A test will be given at the end of each unit.  Quizzes & Labs (40%):  Quizzes and/or will be given/assigned periodically throughout each unit.  Exercises & Homework (20%):  Includes all other assignments.

 

Resources