AP Computer Science A Syllabus

Course Overview

AP Computer Science A is an introductory college-level computer science course that emphasizes object-oriented programming and problem-solving. The course is designed to prepare students for the AP Computer Science A Exam while fostering a deep understanding of programming concepts, algorithms, and data structures. Students will use Java as the primary programming language and will engage in hands-on projects, coding exercises, and algorithmic problem-solving.

This course will also incorporate foundational computer science concepts from the textbook "Invitation to Computer Science" by G. Michael Schneider and Judith L. Gersting, providing a broader context for understanding computational thinking and the principles of computer science.


Course Objectives

By the end of the course, students will be able to:

  1. Design, implement, and analyze solutions to problems using object-oriented programming in Java.
  2. Understand and apply fundamental programming constructs, including variables, loops, conditionals, and methods.
  3. Develop and use algorithms to solve computational problems.
  4. Work with data structures such as arrays, ArrayLists, and 2D arrays.
  5. Understand and apply principles of inheritance, polymorphism, and abstraction.
  6. Analyze and debug programs to ensure correctness and efficiency.
  7. Prepare for and succeed on the AP Computer Science A Exam.

Textbook

Title: Invitation to Computer Science
Authors: G. Michael Schneider and Judith L. Gersting
Edition: Latest Edition (as available)
OIP-C

This textbook provides an introduction to the theoretical and practical foundations of computer science. While the primary focus of the course is Java programming, selected chapters from the textbook will be used to explore topics such as algorithms, computational theory, and the history of computing.


Grading Policy

Grades will be based on the following components:

Category Percentage
Attenence 15%
Class Participation 15%
Homework 20%
Exam 50%

Classroom Expectations

  1. Be Respectful: Respect your peers, instructor, and the learning environment.
  2. Be Prepared: Bring your materials (textbook, notebook, laptop) and complete assignments on time.
  3. Engage Actively: Participate in discussions, ask questions, and collaborate with classmates.
  4. Follow Academic Integrity: Plagiarism or copying code is strictly prohibited. All work must be your own.
  5. Practice Regularly: Programming is a skill that improves with consistent practice.

AP Exam Information


Course Schedule

Weeks 1 - 2 : Introduction to Computer Science and Java


Weeks 3 - 5 : Basic Programming Constructs


Weeks 6 - 8 : Methods and Object-Oriented Programming


Weeks 9 - 11 : Arrays and ArrayLists


Weeks 12 - 14 : Advanced OOP Concepts


Weeks 15 - 18 : Recursion and 2D Arrays


Weeks 19 - 28 : AP Exam Preparation


Week 28 - 34: Final Project


Contact Information