3 - AP CS A "Java"
Overview
AP Computer Science A is equivalent to a first-semester, college level course in computer science. The course introduces students to computer science with fundamental topics that include problem solving, design strategies and methodologies, organization of data (data structures), approaches to processing data (algorithms), analysis of potential solutions, and the ethical and social implications of computing. We emphasize both object-oriented and imperative problem solving and design using Java language.
These techniques represent proven approaches for developing solutions that can scale up from small, simple problems to large, complex problems. The AP Computer Science A course curriculum is compatible with many CS100 courses in colleges and universities.
Benefits
Computational thinking – which is the logic, algorithmic thinking, and problem-solving aspects of computer science – provides an analytical backbone that is useful for every single student, in any career. –Hadi Partovi
At the university level, computer science satisfies graduation requirements for 95% of B.S. degrees –Code.org
Of the more than 9 million STEM jobs available in the next decade, half will require computing experience. –Bureau of Labor Statistics
Software and IT services is the highest-paying industry, with a median salary of $104,000 this year. –LinkedIn 2017 U.S. State of Salary Report
Topics covered
Unit 1: Primitive Types
You’ll learn the fundamentals of Java, a programming language, as well as other foundational concepts for coding.
Unit 2: Using Objects
You’ll explore reference data as a way to represent real-world objects in a digital world and discover methods to perform more complex operations.
Unit 3: Boolean Expressions and if Statements
You’ll delve into the building blocks of algorithms and focus on using conditional statements to solve problems and control results.
Unit 4: Iteration
You’ll learn about iteration, another building block of algorithms that are for repetition.
Unit 5: Writing Classes
You’ll explore how real-world interactions can be expressed digitally by organizing behaviors and attributes into classes, and you’ll examine the legal and ethical implications of computer programming.
Unit 6: Array
You’ll learn techniques and standard algorithms to work with collections of related data, known as data structures.
Unit 7: ArrayList
You’ll delve deeper into data sets, exploring ArrayList objects for larger amounts of data, as well as the privacy concerns related to personal data storage.
Unit 8: 2D Array
Now that you’ve explored 1D arrays, you’ll branch out into 2D arrays and experiment with data sets represented in a table.
Unit 9: Inheritance
You’ll learn how to manipulate programming without altering existing code by using subclasses to create a hierarchy.
Unit 10: Recursion
You’ll work on solving larger problems by solving smaller, simpler versions of the same problem using recursive methods.
Before enrolling
Minimum Academic Pre-requisites:
Math I must be taken prior to AP Computer Science A.
Recommended Academic Proficiency:
AP Computer Science A students are STRONGLY recommended to have scored an A in AP CSP.
Students will find the class more manageable if they have completed or are concurrently enrolled in Pre-Calculus.
In class
Design, implement, and analyze solutions to problems
Write, run, test, and debug solutions in the Java programming language
Read and understand Java programs
Discuss the ethical and social implications of computer use