Course Information
AP Computer Science A
This course introduces high school students to the foundations of modern computing. The course covers a broad range of foundational topics such as programming, algorithms, the Internet, big data, digital privacy and security, and the societal impacts of computing.
Subject: | Mathematics |
State Number: | 991195 |
Course Credits: | |
Course Options: |
|
NCAA: |
Unit 1: Introduction to Java
Unit Overview: In this unit, you will be introduced to the Java language and learn about output, escape characters, user input, variables, data types, number calculations, numeric casts, modular division, string output, number output, math functions, and roundoff error.
Missouri Learning Standards: You will know you have achieved the learning goal when you can:
- Compare different bit representations of data types, such as characters, Booleans and numbers while recognizing when using each data type is appropriate. (11-12.DA.S.01)
- Generate data sets that use a variety of data collection tools and analysis techniques to support a claim and/or communicate information. (11-12.DA.CVT.01)
- Construct solutions to problems using student-created components (e.g., procedures, modules, objects). (11-12.AP.M.01)
- Create programming solutions by reusing existing code (e.g., libraries, Application Programming Interface (APIs), code repositories). (11-12.AP.M.02)
Unit 2: Conditional and Loops
Unit Overview: In this unit, you will learn about if statements, else statements, booleans, truth tables, short-circuit evaluation, De Morgan’s Law, while loops, tracing code, and flag variables.
Missouri Learning Standards: You will know you have achieved the learning goal when you can:
- Compare different bit representations of data types, such as characters, Booleans and numbers while recognizing when using each data type is appropriate. (11-12.DA.S.01)
- Construct solutions to problems using student-created components (e.g., procedures, modules, objects). (11-12.AP.M.01)
- Create programming solutions by reusing existing code (e.g., libraries, Application Programming Interface (APIs), code repositories). (11-12.AP.M.02)
- Develop and use a series of test cases to verify that a program performs according to its design specifications. (11-12.AP.PD.05 )
Unit 3: String and One-Dimensional Arrays
Unit Overview: In this unit, you will learn about strings, class types, one-dimensional arrays, for loops, algorithms, arrays, and binary & octal.
Missouri Learning Standards: You will know you have achieved the learning goal when you can:
- Compare and contrast fundamental data structures and their uses. (3B-AP-12)
- Demonstrate code reuse by creating programming solutions using libraries and APIs. (3B-AP-16)
- Use and adapt classic algorithms to solve computational problems. (3B-AP-10)
- Evaluate key qualities of a program through a process such as a code review. (3B-AP-23)
Unit 4: Methods
Unit Overview: In this unit, you will learn about void methods, parameters, return methods, overloaded methods, and recursion.
Missouri Learning Standards: You will know you have achieved the learning goal when you can:
- Compare different bit representations of data types, such as characters, Booleans and numbers while recognizing when using each data type is appropriate. (11-12.DA.S.01)
- Construct solutions to problems using student-created components (e.g., procedures, modules, objects). (11-12.AP.M.01)
- Create programming solutions by reusing existing code (e.g., libraries, Application Programming Interface (APIs), code repositories). (11-12.AP.M.02)
- Evaluate key qualities of a program through a process such as a code review. (11-12.AP.PD.07)
Unit 5: User-Defined Classes
Unit Overview: In this unit, you will be introduced to topics like ArrayList, for-each loops, classes, constructors, and static vs. instance.
Missouri Learning Standards: You will know you have achieved the learning goal when you can:
- Compare different bit representations of data types, such as characters, Booleans and numbers while recognizing when using each data type is appropriate. (11-12.DA.S.01)
- Construct solutions to problems using student-created components (e.g., procedures, modules, objects). (11-12.AP.M.01)
- Create programming solutions by reusing existing code (e.g., libraries, Application Programming Interface (APIs), code repositories). (11-12.AP.M.02)
- Evaluate key qualities of a program through a process such as a code review. (11-12.AP.PD.07)
Unit 6: Advanced Classes
Unit Overview: In this unit, you will learn about inheritance, overriding methods, abstract classes, is-a and has-a relationships, interfaces and wrapper classes.
Missouri Learning Standards: You will know you have achieved the learning goal when you can:
- Compare different bit representations of data types, such as characters, Booleans and numbers while recognizing when using each data type is appropriate. (11-12.DA.S.01)
- Construct solutions to problems using student-created components (e.g., procedures, modules, objects). (11-12.AP.M.01)
- Create programming solutions by reusing existing code (e.g., libraries, Application Programming Interface (APIs), code repositories). (11-12.AP.M.02)
- Evaluate key qualities of a program through a process such as a code review. (11-12.AP.PD.07)
Unit 7: Algorithms
Unit Overview: In this unit, you will learn about algorithms, linear search, selection sort, insertion sort, binary search and merge sort.
Missouri Learning Standards: You will know you have achieved the learning goal when you can:
- Critically examine and trace classic algorithms (e.g., selection sort, insertion sort, binary search, linear search). (11-12.AP.A.01)
- Evaluate algorithms (e.g., sorting, searching) in terms of their efficiency and clarity. (11-12.AP.A.04)
Unit 8: Two-Dimensional Arrays
Unit Overview: In this unit you will learn about 2-D arrays and their algorithms.
Missouri Learning Standards: You will know you have achieved the learning goal when you can:
- Critically examine and trace classic algorithms (e.g., selection sort, insertion sort, binary search, linear search). (11-12.AP.A.01)
- Evaluate algorithms (e.g., sorting, searching) in terms of their efficiency and clarity. (11-12.AP.A.04)