AP® Computer Science A

Course Overview:

This AP® Computer Science A online course is a year-long introductory, college-level computer science course. In this course, students cultivate their understanding of coding through analyzing, writing, and testing code as they explore concepts such as modularity, variables, and control structures. College level AP Computer Science is designed to help students prepare to take the Advanced Placement AP Computer Science A Exam ™ administered by the College Board. While it can be taken standalone with no pre-requisites, this is one of our most advanced courses, and some degree of technical comfort is recommended.

Semester A: 

In Semester A, students will learn foundational concepts of programming using Java. They will begin by getting familiar with the Java language and the Eclipse IDE, learning about data types, variables, and string manipulation. Students will explore user input, basic flow control structures (like loops and conditionals), and how to write methods. The course also covers debugging techniques and handling exceptions.

The semester introduces Object-Oriented Programming (OOP) principles, including understanding and creating objects in Java. Students will learn how to build graphical programs with Java and use Swing input controls. The course will also introduce arrays and collections for managing groups of data, along with key OOP concepts like inheritance and polymorphism, providing a strong foundation for further programming studies.

Semester B:

In Semester B, students will build on their programming skills by working on a “Jail Break Project,” applying what they’ve learned in real-world scenarios. They will explore math functions in Java and learn about file access for reading and writing data. Students will dive into algorithms, focusing on sorting, searching, and recursion, while also considering program efficiency.

The semester introduces topics like working with vector and bitmap images and understanding object composition and copying. Students will also gain a basic understanding of computer networking. Software engineering principles will be covered, with an emphasis on team collaboration through a team project.

Supplemental labs will reinforce learning, and the semester concludes with a GridWorld case study, allowing students to apply OOP concepts in a more complex context. This semester provides both technical knowledge and practical experience in software development and teamwork.

Back to top