|Unit 1: Introduction to Computer Science
|Students are introduced to the Java programming language fundamentals (input, output, variables, mathematical expressions), conditional statements (if, else if, else) and control statements (while, for) as well as early Object Oriented Programming practices.
|Unit 2: Classes and Objects
Students learn more about classes and object oriented programming. Topics include class creation, constructors, accessor and mutator methods, toString and equals methods, instantiation and calling methods on objects.
|Unit 3: Arrays, ArrayLists, Recursion, Searching, Sorting, and Complexity Analysis
Students learn recursive algorithms along with the sequential, binary and Hash search algorithms. We also cover the selection, insertion, mergesort, quicksort, and heapsort sorting algorithms. Finally we discuss Big-Oh notation along with worst-case/average-case time and space analysis.
|Unit 4: GridWorld Case Study
Students will learn about the GridWorld Case Study. The GridWorld case study is computer program case study that illustrates Object Oriented Programming and the principles of inheritance and polymorphism.
|Unit 5: Review
Students review all material and complete several AP multiple choice exams along with completing several AP free response examples. We also review the GridWorld Case Study.