# AP CS A * [Video Tutorials](Video-Tutorials.md.html) * [Curriculum Map](Curriculum-Map.md.html) * [Curriculum Assets](Assets.md.html) ## Unit 1: Programming & Java (2 weeks) * [Lesson 1.01: Using Eclipse & Practice It](Unit1/Lesson-101.md.html) * [Lesson 1.02: Algorithms & Computational Thinking](Unit1/Lesson-102.md.html) * [Lesson 1.03: String & Console Output](Unit1/Lesson-103.md.html) * [Lesson 1.04: Common Errors & Comments](Unit1/Lesson-104.md.html) * [Lesson 1.05: Static Methods & Method Calls (1/2)](Unit1/Lesson-105.md.html) * [Lesson 1.06: Static Methods & Method Calls (2/2)](Unit1/Lesson-106.md.html) * [Lesson 1.07: Programming Project](Unit1/Lesson-107.md.html) * [Lesson 1.08: Finding & Fixing Errors](Unit1/Lesson-108.md.html) * [Lesson 1.09: Review](Unit1/Lesson-109.md.html) * [Lesson 1.99: (Unit 1 Test)](Curriculum-Map.md.html#199) ## Unit 2: Working with Data & Basic Control Flow (3 weeks) * [Lesson 2.00: Test Review & Reteach](Unit2/Lesson-200.md.html) * [Lesson 2.01: Basic Data Concepts](Unit2/Lesson-201.md.html) * [Lesson 2.02: Declaring & Assigning Variables](Unit2/Lesson-202.md.html) * [Lesson 2.03: String Concatenation & Increment Decrement Operators](Unit2/Lesson-203.md.html) * [Lesson 2.04: Mixing Types & Casting](Unit2/Lesson-204.md.html) * [Lesson 2.05: for Loops](Unit2/Lesson-205.md.html) * [Lesson 2.06: nested for Loops](Unit2/Lesson-206.md.html) * [Lesson 2.07: Scope & Pseudocode](Unit2/Lesson-207.md.html) * [Lesson 2.08: Programming Project](Unit2/Lesson-208.md.html) * [Lesson 2.09: Programming Project](Unit2/Lesson-209.md.html) * [Lesson 2.10: Finding & Fixing Errors](Unit2/Lesson-210.md.html) * [Lesson 2.11: Review](Unit2/Lesson-211.md.html) * [Lesson 2.99: (Unit 2 Test)](Curriculum-Map.md.html#299) ## Unit 3: Advanced Data & Control Flow (4 weeks) * [Lesson 3.00: Test Review & Reteach](Unit3/Lesson-300.md.html) * [Lesson 3.01: Parameters](Unit3/Lesson-301.md.html) * [Lesson 3.02: Limitations of Parameters & Multiple Parameters](Unit3/Lesson-302.md.html) * [Lesson 3.03: Return Values](Unit3/Lesson-303.md.html) * [Lesson 3.04: Programming Project](Unit3/Lesson-304.md.html) * [Lesson 3.05: Using Objects & String Processing](Unit3/Lesson-305.md.html) * [Lesson 3.06: Interactive Programs & Scanner Objects](Unit3/Lesson-306.md.html) * [Lesson 3.07: Pokémon Battle Programming Project](Unit3/Lesson-307.md.html) * [Lesson 3.08: Finding & Fixing Errors](Unit3/Lesson-308.md.html) * [Lesson 3.09: Relational Operators & if/else](Unit3/Lesson-309.md.html) * [Lesson 3.10: Nested if/else Statements](Unit3/Lesson-310.md.html) * [Lesson 3.11: Reducing Redundancy](Unit3/Lesson-311.md.html) * [Lesson 3.12: Cumulative Algorithms](Unit3/Lesson-312.md.html) * [Lesson 3.13: while Loops](Unit3/Lesson-313.md.html) * [Lesson 3.14: Random Numbers](Unit3/Lesson-314.md.html) * [Lesson 3.15: Fencepost & Sentinel Loops](Unit3/Lesson-315.md.html) * [Lesson 3.16: Boolean Logic (2 Days)](Unit3/Lesson-316.md.html) * [Lesson 3.17: Finding & Fixing Errors](Unit3/Lesson-317.md.html) * [Lesson 3.18: Review](Unit3/Lesson-318.md.html) * [Lesson 3.99: (Unit 3 test)](Curriculum-Map.md.html#399) * [Test 2 Guide](Unit3/Test-2-Guide.md.html) * [Lesson 3.XX: Frac Calc](Curriculum-Map.md.html#3xx) ## Unit 4: Arrays, Lists, & Files (4 weeks) * [Lesson 4.00: Test Review & Reteach](Unit4/Lesson-400.md.html) * [Lesson 4.01: Array Basics](Unit4/Lesson-401.md.html) * [Lesson 4.02: For-Each Loop & Arrays Class](Unit4/Lesson-402.md.html) * [Lesson 4.03: Printing, Searching, & Testing for Equality (2 Days)](Unit4/Lesson-403.md.html) * [Lesson 4.04: Reference Semantics](Unit4/Lesson-404.md.html) * [Lesson 4.05: Shifting Values & Arrays of Objects](Unit4/Lesson-405.md.html) * [Lesson 4.06: Nested Loop Algorithms & Rectangular Arrays](Unit4/Lesson-406.md.html) * [Lesson 4.07: ArrayList](Unit4/Lesson-407.md.html) * [Lesson 4.08: Finding & Fixing Errors](Unit4/Lesson-408.md.html) * [Lesson 4.09: Magpie Lab (5 Days)](Unit4/Lesson-409.md.html) * [Lesson 4.10: Review](Unit4/Lesson-410.md.html) * [Lesson 4.99: (Unit 4 test)](Curriculum-Map.md.html#499) ## Unit 5: Object-Oriented Programming (4 weeks) * [Lesson 5.00: Test Review & Reteach](Unit5/Lesson-500.md.html) * [Lesson 5.01: Object Oriented Programming](Unit5/Lesson-501.md.html) * [Lesson 5.02: Object State & Behavior](Unit5/Lesson-502.md.html) * [Lesson 5.03: Object Initialization: Constructors](Unit5/Lesson-503.md.html) * [Lesson 5.04: Encapsulation](Unit5/Lesson-504.md.html) * [Lesson 5.05: Finding & Fixing Errors](Unit5/Lesson-505.md.html) * [Lesson 5.06: Picture Lab (9 Days)](Unit5/Lesson-506.md.html) * [Lesson 5.07: Review](Unit5/Lesson-507.md.html) * [Lesson 5.99: (Unit 5 test)](Curriculum-Map.md.html#599) ## Unit 6: Inheritance & Polymorphism (4 weeks) * [Lesson 6.00: Test Review & Reteach](Unit6/Lesson-600.md.html) * [Lesson 6.01: Inheritance Basics (2 Days)](Unit6/Lesson-601.md.html) * [Lesson 6.02: Overriding Methods & Accessing Inherited Code](Unit6/Lesson-602.md.html) * [Lesson 6.03: Interacting with the Object Superclass](Unit6/Lesson-603.md.html) * [Lesson 6.04: Polymorphism](Unit6/Lesson-604.md.html) * [Lesson 6.05: Has-a Relationships](Unit6/Lesson-605.md.html) * [Lesson 6.06: Interfaces](Unit6/Lesson-606.md.html) * [Lesson 6.07: Programming Project (5 Days)](Unit6/Lesson-607.md.html) * [Lesson 6.08: Finding & Fixing Errors](Unit6/Lesson-608.md.html) * [Lesson 6.09: Review](Unit6/Lesson-609.md.html) * [Lesson 6.99: (Unit 6 test)](Curriculum-Map.md.html#699) * [Test 5 Guide](Unit6/Test-5-Guide.md.html) * [Lesson 6.XX: Text Excel](Curriculum-Map.md.html#6xx) ## Unit 7: Searching & Sorting (3 weeks) * [Lesson 7.00: Test Review & Reteach](Unit7/Lesson-700.md.html) * [Lesson 7.01: Searching Algorithms](Unit7/Lesson-701.md.html) * [Lesson 7.02: Sorting Algorithms](Unit7/Lesson-702.md.html) * [Lesson 7.03: Elevens Lab (16 Days)](Unit7/Lesson-703.md.html) * [Lesson 7.04: Review](Unit7/Lesson-704.md.html) * [Lesson 7.99: (Unit 7 test)](Curriculum-Map.md.html#799) * [Test 6 Guide](Unit7/Test-6-Guide.md.html) ## Unit 8: Recursion (2 weeks) * [Lesson 8.00: Test Review & Reteach](Unit8/Lesson-800.md.html) * [Lesson 8.01: Thinking Recursively](Unit8/Lesson-801.md.html) * [Lesson 8.02: Writing Recursive Solutions](Unit8/Lesson-802.md.html) * [Lesson 8.03: Mechanics of Recursion](Unit8/Lesson-803.md.html) * [Lesson 8.04: MergeSort](Unit8/Lesson-804.md.html) * [Lesson 8.05: Finding & Fixing Errors](Unit8/Lesson-805.md.html) * [Lesson 8.06: Review](Unit8/Lesson-806.md.html) * [Lesson 8.07: (Unit 8 quiz)](Curriculum-Map.md.html#807) * [Lesson 8.08: Quiz Review & Reteach](Unit8/Lesson-808.md.html) ## Unit 9: AP Test Review (3 weeks) * [Lesson 9.00: Reviewing for the AP Exam](Unit9/Lesson-900.md.html) ## Unit 10: Post-AP Exam Projects (4–5 weeks) * [SpaceBattleArena](http://mikeware.github.io/SpaceBattleArena/) * [TEALS Minecraft Modding](https://tealsk12.github.io/teals-minecraft/) ## Appendix * [About This Curriculum](About.md.html) * [Changelog](CHANGELOG.md.html) * [Contributing](CONTRIBUTING.md.html) * [Acknowledegments](About.md.html#acknowledgements)