AP Computer Science A is the study of the Java programming language. This course is the equivalent of an introductory college course in Computer Science. Students will be proficient in programming in Java by the end of the course. Starting with the fundamentals of programming students will learn about variables, conditions and loops. Once this foundation is set, students will be introduced to data structures, arrays and lists. Students will write many static methods as well as full classes throughout the course. By the end of the course, students will be prepared to take the AP Computer Science A exam.
| Unit |
Timeframe |
Big Ideas (Statements or Essential Questions) |
Major Learning Experiences from Unit |
1
Primitive Types & Conditions |
5 classes |
- What is a primitive type?
- What is the purpose of a condition in a programming language?
|
- Declare and initialize variables of the correct type
- Perform math operations in Java
- Write conditional statements
|
2
Using Objects |
8 classes |
- What is an object?
- What is the purpose of an object in programming?
- How does the String class work?
|
- Make an object
- Call methods on an object
- Declare String objects
- Call String methods to manipulate String objects
|
3
Iteration/Loops |
8 classes |
- What is the purpose of iterating in code?
- What are the different types of loops?
|
- Write for, while and for-each loops
- Trace code with loops
|
4
Writing Classes |
8 classes |
- What is the purpose of a class?
- What is the function of object-oriented programming?
|
- Understand classes consist of variables, constructors, and methods
- Write a class from scratch
- Add methods to an existing class
- Instantiate objects
|
5
Arrays |
10 classes |
- How can data be stored and accessed?
- What is the syntax for an array?
|
- Declare and initialize arrays of different types
- Add and remove items from an array
- Write static methods involving arrays
- Write a loop to go through an array
|
6
2D Arrays |
10 classes |
- How can 2D data be stored and accessed?
- How can a loop be useful for a 2D array?
|
- Declare and initialize a 2D array
- Access and store data in a 2D array
- Write loops to traverse a 2D array
- Trace code
|
7
Inheritance |
8 classes |
- How can classes be connected?
- How can code be reused?
|
- Understand the extends and super keywords
- Write a subclass
- Call appropriate methods on subclasses
- Understand errors that can occur
|
8
ArrayList |
10 classes |
- What is the difference between arrays and ArrayLists?
|
- Declare and initialize an ArrayList
- Access and modify data in a List
- Loop through a list
- Write methods that involve ArrayLists
|
9
Recursion |
5 classes |
- How can a function be defined in terms of itself?
- What is recursion?
|
- Trace a recursive method
- Identify the base case and recursive call
|