This is Tynker’s year-long course designed to introduce students to the Java programming language and prepare them for the AP CS A Exam.
AP Computer Science A is an introductory college-level course taught in Java, a programming language for professional programmers. We recommend that any academically prepared student take this introductory programming course. The only prerequisite is Algebra 1.
Our course emphasizes problem-solving using an object-oriented methodology. Students will learn the Java programming language, study data structures, analyze algorithms, and get a deep understanding of object-oriented programming. With over 100 hours of instruction, it’s designed to be taught daily as a year-long class.
The course is entirely web-based, so there’s no additional software to download or install. Each interactive lesson practices hands-on coding, while students learn to design and build and debug Java programs to solve real world problems.
Lessons also include free response practice questions and multiple-choice quizzes to help prepare for the AP exam.
In AP Computer Science A, students will explore the following big ideas in computer science:
- BIG IDEA 1: MODULARITY (MOD) Incorporating elements of abstraction, by breaking problems down into interacting pieces, each with their own purpose, makes writing complex programs easier. Abstracting simplifies concepts and processes by looking at the big picture rather than being overwhelmed by the details. Modularity in object-oriented programming allows us to use abstraction to break complex programs down into individual classes and methods.
- BIG IDEA 2: VARIABLES (VAR) Information used as a basis for reasoning, discussion, or calculation is referred to as data. Programs rely on variables to store data, on data structures to organize multiple values when program complexity increases, and on algorithms to sort, access, and manipulate this data. Variables create data abstractions, as they can represent a set of possible values or a group of related values.
- BIG IDEA 3: CONTROL (CON) Doing things in order, making decisions, and doing the same process multiple times are represented in code by using control structures and specifying the order in which instructions are executed. Programmers need to think algorithmically in order to define and interpret processes that are used in a program.
- BIG IDEA 4: IMPACT OF COMPUTING (IOC) Computers and computing have revolutionized our lives. To use computing safely and responsibly, we need to be aware of privacy, security, and ethical issues. As programmers, we need to understand how our programs will be used and be responsible for the consequences.
- Java syntax
- If Statements
- Data types
- Array List
- 2D Arrays
- Sort Algorithms
- Search Algorithms
* Online courses require a modern desktop computer, laptop computer, Chromebook, or Netbook with Internet access and a Chrome (29+), Firefox (30+), Safari (7+), or Edge (20+) browser. No downloads required.
AP Computer Science A Lesson Plan
Unit 1: Primitive Types
Mark Your Calendar
- AP CSA Exam Date: Mark the date and remind your students as the deadline approaches. Visit the official AP Computer Science A website for more information.
- AP Practice Exam: Set another reminder about one month before the AP Exam is scheduled, and make sure that all students complete at least one Practice Exam. You can find the exam, scoring guidelines, and answer keys on the AP Classroom website. Encourage your students to visit the AP Computer Science A student page for exam information and exam practice.
Suggested Unit Pacing Guide
|Week 1||School-specific orientation, Lessons 1.1-1.3|
|Week 2||Lessons 1.4-1.7|
|Week 3||Lessons 1.8-1.11|
|Week 4||Lessons 1.12-1.15|
|Week 5||Lessons 1.16-1.20|
|Week 6||Lessons 1.21-1.25|
- Two or three days at the start of the school year for school and classroom orientation activities
- A few days that class will not meet due to unexpected interruptions such as fire drills or assemblies
- A few days that school does not meet due to weather or teacher professional development
- Several days that class will not meet due to school-wide standardized testing
- Reduce or eliminate some Pair Programming Challenges
- Reduce or eliminate the "if time available" parts of lessons
- After each Unit, spend one day in AP Classroom assigning students more practice problems
- Revisit Pair Programming Challenges and expect students to complete more of the challenges
Personal Progress Check in AP Classroom
Formative Assessment in AP Classroom
|AP CSA Topic||Tynker Lesson after which formative assessment may be assigned|
|1.1 Why Programming? Why Java?||1.5|
|1.2 Variables and Data Types||1.18|
|1.3 Expressions and Assignment Statements||1.24|
|1.4 Compound Assignment Operators||1.24|
|1.5 Casting and Ranges of Variables||1.23|