**TEALS Program** Home | Curriculum Map # Unit 4: Arrays, Lists, & Files (4 weeks) The following curriculum map is a Day-by-Day listing of the AP Computer Science course in chronological order. Each row represents one Day of class, based on a medium-paced class. Readings from the textbook and homework assignments are included on the Day when they should be assigned. Refer to the Introduction document for information about how to adjust this pacing for your specific classroom. - [Unit 4 Slides][] - [Unit 4 Word Bank][] - [Curriculum Assets](../Assets.md.html) - [Magpie Chatbot Lab](../Assets.md.html) | **LP** | **Title** | **In Class** | **Reading** | **Homework** | |:-------|:--------------------------------------|:---------------|:----------------|:----------------| | [4.00][] |Test Review & Reteach|Review test|7.1 up to Arrays and Methods|Test corrections | [4.01][] |Array Basics|[WS 4.1][] [Poster 4.2][]|7.1 For-Each Loop and The Arrays Class|SC 7.1, 7.7, 7.9 | [4.02][] |For-Each Loop & Arrays Class|[WS 4.2][]|7.2 up to Reversing an Array|SC 7.12-7.14 | [4.03][] |Printing, Searching, & Testing for Equality|[WS 4.3][] Mini-lessons||SC 7.14-7.17, E 7.3 | [4.03][] |Printing, Searching, & Testing for Equality (Day 2)||7.3|SC 7.19-7.21 | [4.04][] |Reference Semantics|[WS 4.4][] 7.4 up to Command-Line Arguments|E 7.9, 7.10 | [4.05][] |Shifting Values & Arrays of Objects|SC 7.22, 7.23, 7.25, 7.26, 7.30; E 7.16|7.4 Nested Arrays, 7.5 Rectangular Two Dimensional Arrays|SC 7.27-7.29, E 7.14 | [4.06][] |Nested Loop Algorithms & Rectangular Arrays|[WS 4.6][]|10.1 up to Adding to and Removing from an ArrayList|SC [TBD][] | [4.07][] |ArrayList|Grudgeball [Poster 4.7][]||Outline Ch. 7 and 10.1 | [4.08][] |Finding & Fixing Errors|Fix HW|Review Ch. 7, 10.1 for Magpie lab|Submit questions for review | [4.09][] 01|[Magpie Chatbot Lab][] (Day 1)|Magpie Chatbot Lab Activity 1 & 2|Barron's Ch. 6 (8th or later: Ch. 7)| | [4.09][] 02|[Magpie Chatbot Lab][] (Day 2)|Magpie Chatbot Lab Activity 2|Barron's Ch. 6 (8th or later: Ch. 7)| | [4.09][] 03|[Magpie Chatbot Lab][] (Day 3)|Magpie Chatbot Lab Activity 3|Barron's Ch. 6 (8th or later: Ch. 7)| | [4.09][] 04|[Magpie Chatbot Lab][] (Day 4)|Magpie Chatbot Lab Activity 4||Barron's Ch. 6 (8th or later: Ch. 7)practice questions | [4.09][] 05|[Magpie Chatbot Lab][] (Day 5)|Magpie Chatbot Lab Activity 5||Check and correct Barron's Ch. 6 (8th or later: Ch. 7) questions | [4.09a][] 01|Steganography Lab (Day 1)|Steganography Lab Activity 1|Barron's Ch. 6 (8th or later: Ch. 7)| | [4.09a][] 02|Steganography Lab (Day 2)|Steganography Lab Activity 2|Barron's Ch. 6 (8th or later: Ch. 7)| | [4.09a][] 03|Steganography Lab (Day 3)|Steganography Lab Activity 3|Barron's Ch. 6 (8th or later: Ch. 7)| | [4.09a][] 04|Steganography Lab (Day 4)|Steganography Lab Activity 4|Barron's Ch. 6 (8th or later: Ch. 7)| | [4.09a][] 05|Steganography Lab (Day 5)|Steganography Lab Activity 5||Barron's Ch. 6 (8th or later: Ch. 7)practice questions | [4.09a][] 06|Steganography Lab (Day 6)|Steganography Lab Activity 5 (Day 2)||Check and correct Barron's Ch. 6 (8th or later: Ch. 7) questions | [4.09b][] |[Open-Ended Programming Project][]| | [4.10][] |Review|Review questions [WS 4.10][] practice test||Study | 4.99 |Unit 4 test|Test 3 Section I Test 3 Section II|| ## 4.00 | [Lesson 4.00][] | _Test Review & Reteach_ |:----------------|:----------------------- | **Objectives** | Students will re-learn or strengthen content knowledge and skills from Unit 3. | **Assessments** | Students will re-submit test answers with updated corrections for partial or full credit, depending on instructor preference. | **In Class** | Review test | **Reading** | 7.1 up to "_Arrays and Methods_" | **Homework** | Test corrections ## 4.01 | [Lesson 4.01][] | _Array Basics_ |:----------------|:-------------- | **Objectives** | Students will define, populate, and access arrays. | **Assessments** | Students will complete manipulatives exercises on WS 4.1.1 | **In Class** | [WS 4.1][] [Poster 4.2][] | **Reading** | 7.1 "_For-Each Loop_" and "_The Arrays Class_" | **Homework** | SC 7.1,7,9 ## 4.02 | [Lesson 4.02][] | _For-Each Loop & Arrays Class_ |:----------------|:------------------------------ | **Objectives** | Students will define, populate, and access arrays. | **Assessments** | Students will complete manipulatives exercises on WS 4.2 | **In Class** | [WS 4.2][] | **Reading** | 7.2 up to "_Reversing an Array_" | **Homework** | SC 7.12–14 ## 4.03.1 | [Lesson 4.03][] | _Printing, Searching, & Testing for Equality (Day 1)_ |:----------------|:----------------------------------------------------- | **Objectives** | Students will be able to manipulate single-dimension arrays using a variety of array transversal algorithms. | **Assessments** | Students will teach a mini-lesson on printing, searching/replacing, testing for equality, reversing an array, or string traversal. Students will complete a quiz at the end of Day 2. | **In Class** | [WS 4.3][] Teach mini-lessons | **Reading** | | **Homework** | SC 7.14–17 E 7.3 ## 4.03.2 | [Lesson 4.03][] | _Printing, Searching, & Testing for Equality (Day 2)_ |:----------------|:----------------------------------------------------- | **Objectives** | | **Assessments** | | **In Class** | | **Reading** | 7.3 | **Homework** | SC 7.19–21 ## 4.04 | [Lesson 4.04][] | _Reference Semantics_ |:----------------|:--------------------- | **Objectives** | Students will be able to compare and contrast how primitives and arrays are treated when passed as parameters. | **Assessments** | Students will complete graphic organizers and a worksheet. Some students will complete a Pokémon Challenge for extra credit. | **In Class** | [WS 4.4][] | **Reading** | 7.4 up to "_Command-Line Arguments_" | **Homework** | EX 7.9–10 ## 4.05 | [Lesson 4.05][] | _Shifting Values & Arrays of Objects_ |:----------------|:------------------------------------- | **Objectives** | Students will be able to shift elements within an array and construct arrays of objects. | **Assessments** | Students will complete Practice questions and model memory manipulation using array whiteboards. | **In Class** | SC 7.22,23,25,26,30 E 7.16 | **Reading** | 7.4 "_Nested Arrays_" 7.5 "_Rectangular Two Dimensional Arrays_" | **Homework** | SC 7.27–29 E 7.14 ## 4.06 | [Lesson 4.06][] | _Nested Loop Algorithms & Rectangular Arrays_ |:----------------|:--------------------------------------------- | **Objectives** | Students will correctly adjust nested loop headers for use with arrays Students will correctly construct two-dimensional arrays | **Assessments** | Students will complete WS 4.6 | **In Class** | [WS 4.6][] | **Reading** | 10.1 up to "_Adding to and Removing from an ArrayList_" | **Homework** | SC `[_TBD_]` ## 4.07 | [Lesson 4.07][] | _ArrayList_ |:----------------|:----------- | **Objectives** | Students will construct code using ArrayList Students will predict the output of methods that take arrays as parameters and/or return arrays. | **Assessments** | Students will evaluate statements and predict output during a game of Grudgeball. | **In Class** | Grudgeball [Poster 4.7][] | **Reading** | | **Homework** | Outline Ch. 7 and 10.1 ## 4.08 | [Lesson 4.08][] | _Finding & Fixing Errors_ |:----------------|:------------------------- | **Objectives** | Students will find errors in their returned homework assignments, and correct their code. | **Assessments** | Students will re-submit all homework assignments with corrected answers. | **In Class** | Fix homework | **Reading** | Review Ch. 7, 10.1 for Magpie lab | **Homework** | Submit questions for review ## 4.09.1 | [Lesson 4.09][] | _Magpie Lab (Day 1)_ |:----------------|:-------------------- | **Objectives** | Students will complete a long-form lab, using if statements, algorithms, the String class, arrays, and ArrayLists. | **Assessments** | Students will complete the College Board's AP CS A Magpie Chatbot Lab. Students will answer assessment questions on the fourth class exam. | **In Class** | Lab: [Magpie Chatbot Lab][] Magpie Chatbot Lab Activity 1 & 2 | **Reading** | Barron's Ch. 6 (8th or later: Ch. 7) | **Homework** | ## 4.09.2 | [Lesson 4.09][] | _Magpie Lab (Day 2)_ |:----------------|:-------------------- | **Objectives** | | **Assessments** | | **In Class** | Magpie Chatbot Lab Activity 2 | **Reading** | Barron's Ch. 6 (8th or later: Ch. 7) | **Homework** | ## 4.09.3 | [Lesson 4.09][] | _Magpie Lab (Day 3)_ |:----------------|:-------------------- | **Objectives** | | **Assessments** | | **In Class** | Magpie Chatbot Lab Activity 3 | **Reading** | Barron's Ch. 6 (8th or later: Ch. 7) | **Homework** | ## 4.09.4 | [Lesson 4.09][] | _Magpie Lab (Day 4)_ |:----------------|:-------------------- | **Objectives** | | **Assessments** | | **In Class** | Magpie Chatbot Lab Activity 4 | **Reading** | | **Homework** | Barron's Ch. 6 (8th or later: Ch. 7)practice questions ## 4.09.5 | [Lesson 4.09][] | _Magpie Lab (Day 5)_ |:----------------|:-------------------- | **Objectives** | | **Assessments** | | **In Class** | Magpie Chatbot Lab Activity 5 | **Reading** | | **Homework** | Check and correct Barron's Ch. 6 (8th or later: Ch. 7) questions ## 4.09a.1 | [Lesson 4.09a][] | _Steganography Lab (Day 1)_ |:----------------|:-------------------- | **Objectives** | Students will complete a long-form lab, using arithmetic expressions, methods, if statements, algorithms, while/for loops, arrays, and ArrayLists. | **Assessments** | Students will complete the College Board's AP CS A Steganography Lab. Students will answer end of activity Check your understanding and open-ended activity. | **In Class** | Lab: Steganography Lab Steganography Lab Activity 1 | **Reading** | Barron's Ch. 6 (8th or later: Ch. 7) | **Homework** | ## 4.09a.2 | [Lesson 4.09a][] | _Steganography Lab (Day 2)_ |:----------------|:-------------------- | **Objectives** | | **Assessments** | | **In Class** | Steganography Lab Activity 2 | **Reading** | Barron's Ch. 6 (8th or later: Ch. 7) | **Homework** | ## 4.09a.3 | [Lesson 4.09a][] | _Steganography Lab (Day 3)_ |:----------------|:-------------------- | **Objectives** | | **Assessments** | | **In Class** | Steganography Lab Activity 3 | **Reading** | | **Homework** | Barron's Ch. 6 (8th or later: Ch. 7)practice questions ## 4.09a.4 | [Lesson 4.09a][] | _Steganography Lab (Day 4)_ |:----------------|:-------------------- | **Objectives** | | **Assessments** | | **In Class** | Steganography Lab Activity 4 | **Reading** | | **Homework** | Check and correct Barron's Ch. 6 (8th or later: Ch. 7) questions ## 4.09a.5 | [Lesson 4.09a][] | _Steganography Lab (Day 5)_ |:----------------|:-------------------- | **Objectives** | | **Assessments** | | **In Class** | Steganography Lab Activity 5 | **Reading** | | **Homework** | Check and correct Barron's Ch. 6 (8th or later: Ch. 7) questions ## 4.09a.6 | [Lesson 4.09a][] | _Steganography Lab (Day 6)_ |:----------------|:-------------------- | **Objectives** | | **Assessments** | | **In Class** | Steganography Lab Activity 5 (Day 2) | **Reading** | | **Homework** | Check and correct Barron's Ch. 6 (8th or later: Ch. 7) questions ## 4.10 | [Lesson 4.10][] | _Review_ |:----------------|:-------- | **Objectives** | Students will identify weaknesses in their Unit 4 knowledge. | **Assessments** | Students will create a personalized list of review topics to guide tonight's study session. | **In Class** | Review questions [WS 4.10][] Practice test | **Reading** | | **Homework** | Study ## 4.99 | Unit 4 Test | _Arrays, Lists & Files_ |:----------------|:----------------------- | **In Class** | Test 3 Section I Test 3 Section II ## 4.09b | [Lesson 4.09b][] |_Open-Ended Programming Project_ |:----------------|:------------------------ | **Objectives** | Students will be able to conduct user-centered research, plan and create, test evaluate and share | **Assessments** | Students will apply if-else, String methods to implement a software application and Submit a complete, functional program. | **In Class** | | **Reading** | | **Homework** | Conduct user-centered research to find design opportunities and barriers. ## Abbreviations - **WS** — Worksheet - **SC** — Self-Check problem (in the textbook) - **EX** — Exercise (in the textbook) - **PP** — Programming Project (in the textbook) [4.00]: Lesson-400.md.html [4.01]: Lesson-401.md.html [4.02]: Lesson-402.md.html [4.03]: Lesson-403.md.html [4.04]: Lesson-404.md.html [4.05]: Lesson-405.md.html [4.06]: Lesson-406.md.html [4.07]: Lesson-407.md.html [4.08]: Lesson-408.md.html [4.09]: Lesson-409.md.html [4.09a]: Lesson-409a.md.html [4.09b]: Lesson-409b.md.html [4.10]: Lesson-410.md.html [Lesson 4.00]: Lesson-400.md.html [Lesson 4.01]: Lesson-401.md.html [Lesson 4.02]: Lesson-402.md.html [Lesson 4.03]: Lesson-403.md.html [Lesson 4.04]: Lesson-404.md.html [Lesson 4.05]: Lesson-405.md.html [Lesson 4.06]: Lesson-406.md.html [Lesson 4.07]: Lesson-407.md.html [Lesson 4.08]: Lesson-408.md.html [Lesson 4.09]: Lesson-409.md.html [Lesson 4.09a]: Lesson-409a.md.html [Lesson 4.09b]: Lesson-409b.md.html [Lesson 4.10]: Lesson-410.md.html [Lesson 4.09b]: Lesson-409b.md.html [Open-Ended Programming Project]: Lesson-409b.md.html [Poster 4.1]: https://raw.githubusercontent.com/TEALSK12/apcsa-public/master/curriculum/Unit4/Poster%204.1.pptx [Poster 4.2]: https://raw.githubusercontent.com/TEALSK12/apcsa-public/master/curriculum/Unit4/Poster%204.2.pptx [Poster 4.7]: https://raw.githubusercontent.com/TEALSK12/apcsa-public/master/curriculum/Unit4/Poster%204.7.pptx [Unit 4 Slides]: https://raw.githubusercontent.com/TEALSK12/apcsa-public/master/curriculum/Unit4/Unit4.pptx [Unit 4 Word Bank]: https://raw.githubusercontent.com/TEALSK12/apcsa-public/master/curriculum/Unit4/Unit%204%20Word%20Bank.docx [WS 4.10]:https://raw.githubusercontent.com/TEALSK12/apcsa-public/master/curriculum/Unit4/WS%204.10.docx [WS 4.1]: https://raw.githubusercontent.com/TEALSK12/apcsa-public/master/curriculum/Unit4/WS%204.1.docx [WS 4.2]: https://raw.githubusercontent.com/TEALSK12/apcsa-public/master/curriculum/Unit4/WS%204.2.docx [WS 4.3]: https://raw.githubusercontent.com/TEALSK12/apcsa-public/master/curriculum/Unit4/WS%204.3.docx [WS 4.4]: https://raw.githubusercontent.com/TEALSK12/apcsa-public/master/curriculum/Unit4/WS%204.4.docx [WS 4.6]: https://raw.githubusercontent.com/TEALSK12/apcsa-public/master/curriculum/Unit4/WS%204.6.docx