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.
| Teacher: | Feng Gao |
| Grade: | 11 & 12 |
| Classes per Week: | 5 |
| Curriculum + Credit: | AP 5 |
By the end of the course, students will be able to:
Title: Invitation to Computer Science
Authors: G. Michael Schneider and Judith L. Gersting
Edition: Latest Edition (as available)
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.
Grades will be based on the following components:
| Category | Percentage |
|---|---|
| Attendance | 15% |
| Participation | 15% |
| Homework | 20% |
| Exam | 50% |
- Late Work Policy: Assignments submitted late will incur a penalty of 10% per day, up to a maximum of 5 days. After 5 days, no credit will be given.
- Extra Credit: Occasionally, extra credit opportunities may be provided, such as solving advanced coding challenges.
| Week | Dates | Topics | Unit |
|---|---|---|---|
| Week 1 | Sep 1 - Sep 7 | AP CSA 1.1 Introduction, Variables and Data Types | Unit 1: Primitive Types |
| Week 2 | Sep 8 - Sep 14 | AP CSA 1.2 Expressions, Operators, Casting and Ranges of Variables | Unit 1: Primitive Types |
| Week 3 | Sep 15 - Sep 21 | AP CSA 2.1 - Introduction to Objects and Classes | Unit 2: Using Objects |
| Week 4 | Sep 22 - Sep 28 | AP CSA 2.2 - Calling methods | Unit 2: Using Objects |
| Week 5 | Sep 29 - Oct 5 | National Holiday | Unit 2: Using Objects |
| Week 6 | Oct 6 - Oct 12 | AP CSA 2.2 - String methods, Wrapper Classes, Math Class | Unit 2: Using Objects |
| Week 7 | Oct 13 - Oct 19 | AP CSA 3.1 - Boolean Expressions, if statements | Unit 3: Boolean Expressions and if Statements |
| Week 8 | Oct 20 - Oct 26 | AP CSA 3.2 - De Morgan's Laws, Comparing Objects | Unit 3: Boolean Expressions and if Statements |
| Week 9 | Oct 27 - Nov 2 | AP CSA 4.1 - Introduction to Iteration, while loops | Unit 4: Iteration |
| Week 10 | Nov 3 - Nov 9 | AP CSA 4.2 - For loops | Unit 4: Iteration |
| Week 11 | Nov 10 - Nov 16 | Midterm Exam | Unit 4: Iteration |
| Week 12 | Nov 17 - Nov 23 | AP CSA 4.3 - Loop Counters, Nested Loops | Unit 4: Iteration |
| Week 13 | Nov 24 - Nov 30 | AP CSA 5.1 - Class Design, Constructors | Unit 5: Writing Classes |
| Week 14 | Dec 1 - Dec 7 | AP CSA 5.2 - this keyword, Accessor/Mutator methods, Static methods | Unit 5: Writing Classes |
| Week 15 | Dec 8 - Dec 14 | Winter Break | |
| Week 16 | Dec 15 - Dec 21 | Winter Break | |
| Week 17 | Dec 22 - Dec 28 | AP CSA 6.1 - Introduction to Arrays | Unit 6: Array |
| Week 18 | Dec 29 - Jan 4 | AP CSA 6.2 - Array Traversal, Algorithms | Unit 6: Array |
| Week 19 | Jan 5 - Jan 11 | AP CSA 7.1 - Introduction to ArrayList | Unit 7: ArrayList |
| Week 20 | Jan 12 - Jan 18 | AP CSA 7.2 - ArrayList Traversal, Algorithms | Unit 7: ArrayList |
| Week 21 | Mar 2 - Mar 8 | AP CSA 8.1 - Introduction to 2D Arrays | Unit 8: 2D Array |
| Week 22 | Mar 9 - Mar 15 | AP CSA 8.2 - 2D Array Traversal, Jagged Arrays | Unit 8: 2D Array |
| Week 23 | Mar 16 - Mar 22 | AP CSA 9.1 - Introduction to Inheritance, extends keyword | Unit 9: Inheritance |
| Week 24 | Mar 23 - Mar 29 | AP CSA 9.2 - Method Overriding, Polymorphism | Unit 9: Inheritance |
| Week 25 | Mar 30 - Apr 5 | AP CSA 10.1 - Introduction to Recursion | Unit 10: Recursion |
| Week 26 | Apr 6 - Apr 12 | Review and Practice Exam | Review and Practice Exam |
| Week 27 | Apr 13 - Apr 19 | Review and Practice Exam | Review and Practice Exam |
| Week 28 | Apr 20 - Apr 26 | Review and Practice Exam | Review and Practice Exam |
| Week 29 | Apr 27 - May 3 | Midterm Exam | Midterm Exam |
| Week 30 | May 4 - May 10 | AP Exam Preparation and Review | AP Exam Review |
| Week 31 | May 11 - May 17 | AP Computer Science A Exam | AP Exam |
| Week 32 | May 18 - May 24 | Final Project Development | Final Project |
| Week 33 | May 25 - May 31 | Final Project Development | Final Project |
| Week 34 | Jun 1 - Jun 7 | Final Project Development | Final Project |
| Week 35 | Jun 8 - Jun 14 | Final Project Presentations | Final Project Presentations |
Exam Date: Refer to the College Board website for the official AP Computer Science A Exam date.
Exam Format:
Preparation: